Obsah:

Otvárač garážových brán Raspberry Pi 3: 15 krokov (s obrázkami)
Otvárač garážových brán Raspberry Pi 3: 15 krokov (s obrázkami)

Video: Otvárač garážových brán Raspberry Pi 3: 15 krokov (s obrázkami)

Video: Otvárač garážových brán Raspberry Pi 3: 15 krokov (s obrázkami)
Video: 102 Year Old Lady's Abandoned Home in the USA ~ Power Still ON! 2024, Júl
Anonim
Otvárač garážových brán Raspberry Pi 3
Otvárač garážových brán Raspberry Pi 3

Tento návod som vytvoril v roku 2014. Od tej doby sa toho veľa zmenilo. V roku 2021 som tu aktualizoval inteligentný otvárač garážových brán.

Pomocou Raspberry Pi a smartfónu otvárajte, zatvárajte a monitorujte garážové brány. Otváranie a zatváranie dverí je zabezpečené pomocou certifikátov s vlastným podpisom nainštalovaných v rodinných mobilných telefónoch. Ak sú garážové brány otvorené, aj keď by nemali byť, odošlite textovú správu (SMS) na mobilný telefón.

Garážová brána sa používa nepretržite od konca roku 2014. V priebehu rokov som sa snažil zmeny aktualizovať. Zmeny v pokynoch sú uvedené v prílohe.

Cieľom tohto projektu je:

  • Urobiť môj prvý pokyn - nemal som v pláne uverejniť to, ale dostal som veľa žiadostí
  • Otvorte garážovú bránu štandardným diaľkovým ovládaním
  • Otvorte garážovú bránu pomocou nástenného garážového otvárača
  • Otvorte garážovú bránu pomocou SmartPhone
  • Monitorujte stav garážových brán na diaľku prostredníctvom mobilného telefónu alebo prenosného počítača (sú otvorené alebo zatvorené?)
  • Ak sú dvere otvorené a majú sa zavrieť, pošlite mi správu na mobilný telefón
  • Udržujte garážovú bránu v bezpečí (napríklad pri výpadku napájania by sa dvere nemali otvárať)
  • Nedovoľte nikomu inému na sieti, aby otvoril dvere (obojsmerný certifikát SSL s vlastným podpisom)
  • Namiesto káblového pripojenia použite WiFi
  • Použite Raspberry Pi 3

Základ pre túto implementáciu otvárača garážových brán bol odvodený z kvartariátu Instructable: Raspberry Pi Garage Door Opener by quartarian. Pôvodne som používal model B+ Raspberry Pi, potom som prešiel na Raspberry Pi 2 model B a teraz používa Raspberry Pi 3.

Na komunikáciu s Raspberry Pi som použil MacBook, ale je možné použiť akýkoľvek počítač.

Neexistuje žiadny presvedčivý dôvod na stavbu tohto zariadenia, ale bola to zábava. Ich kúpa je cenovo výhodnejšia. Podobné zariadenie je možné kúpiť za približne 130 USD.

  • Zdvihový majster 828LM
  • Chamberlain MyQ 129 dolárov
  • GoGo Gate 179 dolárov
  • Remeselník 100 dolárov

Poznámky:

  • Text uzavretý rýľovaním, ako je tento ♣ nahradiť-toto ♣, by sa mal nahradiť skutočnou hodnotou
  • Arduino podčiarknutý modrý text je odkaz. V tomto prípade ide o odkaz na arduino verziu otvárača garážových brán.
  • Pokúsil som sa pripísať kredit na každý použitý zdroj. Ospravedlňujem sa za akékoľvek opomenutia. Väčšina tohto dokumentu je založená na práci iných ľudí.
  • $ označuje príkaz vykonaný v terminálovom okne na MacBooku a zvyčajne sa vykonáva na Raspberry Pi

Krok 1: Zhromaždite diely

Nakúpte alebo zozbierajte diely a nástroje (ceny v USD).

  • Raspberry Pi 3 Model B Newark Element14 35 dolárov
  • 5,2 V 2,5 A USB napájací adaptér od Amazonu za 9,99 dolárov
  • Kábel micro USB na USB 6 stôp od Amazonu za 7,99 dolárov
  • Prípad od Amazonu 6,99 dolára
  • SanDisk Ultra 16 GB microSDHC Class 10 s adaptérom (SDSQUAN-016G-G4A) od Amazonu za 8,99 dolára
  • 2 -kanálový 5V reléový štítový modul SunFounder pre Arduino UNO 2560 1280 ARM PIC AVR STM32 Raspberry Pi - 6,79 dolárov
  • 3x prepojovacie vodiče žena-žena. Kúpené vo Fry’s za 4,95 dolára.
  • Dynamické DNS 40 dolárov ročne pre 30 mien (dyn.com)
  • 1-gang 18 cu. palcový ťažký nástenný vypínač a zásuvka Old Work, 3,12 dolárov
  • Biela nástenná doska Ultra Pro Single Brush, 7,88 dolárov
  • SECO-LARM SM 226L, senzor garážových brán, cena sa výrazne líši, 9,99 dolára na Amazone s dovozom zadarmo
  • 50 stôp drôtu pevného termostatu, Home Depot alebo Lowe's, ~ 20 dolárov

Môj celkový súčet: ~ 172,00 dolárov

Mal som nasledujúce diely, nástroje a služby:

  • Ethernetový kábel CAT5
  • Malý drôt, dlhý 6 stôp
  • Skrutkovač s krížovou hlavou
  • Ihlové kliešte na nos
  • Krájače boxov
  • Klenotník plochý skrutkovač, potrebný na uvoľnenie skrutiek na relé
  • MacBook (je možné použiť počítač)
  • AT&T GigaPower (je možné použiť ktoréhokoľvek poskytovateľa internetových služieb)

Krok 2: Nastavte Raspberry Pi bez monitora alebo klávesnice

Nastavte Raspberry Pi bez monitora alebo klávesnice
Nastavte Raspberry Pi bez monitora alebo klávesnice

Všetky projekty Raspberry Pi vyžadujú určitý typ nastavenia. Rád používam rovnakú sadu pokynov a v prípade potreby mám jedno miesto na aktualizáciu týchto pokynov.

Nastavte Raspberry Pi podľa nasledujúceho návodu:

Nastavte Raspberry Pi bez monitora alebo klávesnice

Vyššie uvedené pokyny obsahujú voliteľné kroky v prílohe. Uistite sa, že ste urobili tento krok:

Pridajte certifikáty na strane klienta na webové servery

Vypnite Raspberry Pi

$ sudo shutdown -h 0

Po vypnutí odstráňte

  • ethernetový kábel
  • USB sériový kábel

Tieto už nebudú potrebné. Na spustenie príkazov na Raspberry Pi použite v MacBook wifi, ssh a okno terminálu.

Odpojte napájanie a znova ho zapojte a malinový pi by sa mal reštartovať.

Krok 3: Nainštalujte Wiring Pi, Apache a PHP

Nainštalujte kabeláž Pi

V Mac Book otvorte okno terminálu. Prihláste sa do Raspberry Pi, potom si stiahnite, skompilovajte a nainštalujte Wiring Pi. Tento softvér umožňuje ovládanie pinov GPIO. Tu je návod krok za krokom:

wiringpi.com/download-and-install/

Tu je skrátená verzia pokynov:

$ ssh pi@♣ malina-pi-ip ♣

heslo: ♣ heslo ♣ $ sudo apt-get install git-core $ git clone git: //git.drogon.net/wiringPi $ cd wiringPi $ git pull origin $./build

Spustite príkaz gpio a skontrolujte inštaláciu:

$ gpio -v

Verzia gpio: 2,29 Copyright (c) 2012-2015 Gordon Henderson Toto je bezplatný softvér s ABSOLÚCNE BEZ ZÁRUKY. Pre podrobnosti typ: gpio -záruka Raspberry Pi Podrobnosti: Typ: Model 2, Revízia: 1.1, Pamäť: 1024 MB, Výrobca: Sony [OV] Je povolený strom zariadení. Tento Raspberry Pi podporuje prístup GPIO na úrovni používateľa. -> Na man-stránke nájdete ďalšie podrobnosti $ gpio readall+-----+-----+---------+------+---+--- Pi 2 ---+---+------+---------+-----+-----+| BCM | wPi | Meno | Režim | V | Fyzický | V | Režim | Meno | wPi | BCM | +-----+-----+---------+------+---+---- ++ ----+---+- -----+---------+-----+-----+| | | 3,3v | | | 1 || 2 | | | 5v | | | | 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5V | | | | 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | | | 4 | 7 | GPIO. 7 | VONKAJŠIE | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | | | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | | 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 | | 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | | | 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 1 | IN | GPIO. 4 | 4 | 23 | | | | 3,3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 | | 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | | | 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 | | 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 | | | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 | | 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 | | 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | | | 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 | | 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | | | 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 | | 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 | | | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 | +-----+-----+---------+------+---+---- ++ ----+---+- -----+---------+-----+-----+| BCM | wPi | Meno | Režim | V | Fyzický | V | Režim | Meno | wPi | BCM | +-----+-----+---------+------+---+--- Pi 2 ---+---+--- ---+---------+-----+-----+

Vyššie uvedené príkazy by vám mali poskytnúť istotu, že wiringPi funguje dobre.

Nainštalujte si Apache a PHP

Spustite nasledujúce príkazy:

$ cd..

$ sudo apt-get update $ sudo apt-get install apache2 php5 libapache2-mod-php5

Ak chcete overiť funkčnosť webového servera, otvorte prehliadač a do poľa pre adresu URL zadajte:

♣ malina-pi-ip ♣

Predvolená webová stránka Apache odpovedá „Funguje to!“

Krok 4: Webová stránka

V Mac Book otvorte okno terminálu. Prihláste sa do Raspberry Pi, potom odstráňte predvolený súbor index.html, zmeňte povolenia v adresári webových stránok a upravte súbor s názvom index.php.

$ ssh pi@♣ malina-pi-ip ♣

heslo: ♣ heslo ♣ $ sudo rm /var/www/index.html $ sudo chown pi: root/var/www $ sudo nano /var/www/index.php

A zadajte nasledujúci kód:

Otvárač garáže

Domáca automatizácia

<? php if ($ switch == 1) {echo"

";} else {echo"

"; } ?>

Otvárač garážových brán Príručka otvárača garážových brán zatvorené 1 otvorené 0
<? php if ($ trigger == 0) {echo "<td colspan = \" 4 / "} else {echo"

var13 ->

CTRL-o a ENTER na zapísanie súboru a CTRL-x na ukončenie editora.

Zmeňte povolenia k súboru

$ sudo chmod 664 /var/www/index.php

Krok 5: Obrázok webovej stránky

Obrázok webovej stránky
Obrázok webovej stránky
Obrázok webovej stránky
Obrázok webovej stránky

Vezmite si z webu diaľkový otvárač garážových brán s vysokým rozlíšením. Pomocou štetca na počítači Mac upravte obrázok, ako chcete. Na obrázku vyššie bol použitý Genie Garage Opener s vysokým rozlíšením, bolo pridané logo malinového pi a bola odstránená dióda.

Jeden obrázok je pozadie (remote-background.jpg) a druhý je aktívny obrázok (remote-press.jpg).

Plán bol taký, že po stlačení tlačidla, namiesto blikania LED diódy, začne blikať malina. Web som zjednodušil.

Skopírujte obrázky na malinový pi:

$ scp *-j.webp

heslo: ♣ heslo ♣

Webová stránka má jediné tlačidlo. Ak to chcete overiť, otvorte prehliadač a zadajte príkaz ♣ raspberry-pi-ip ♣. Tlačidlo by sa malo objaviť namiesto predvoleného webu Apache, ktorý uvádza „Funguje to!“. Stlačte ho.

Krok 6: Diaľkovo ovládajte webový server

Aby som mal ľahký prístup k otváraču garážových brán zo vzdialeného miesta, používam dynamický názov DNS. Pretože nerád si pamätám IP adresy.

Vďaka tejto funkcii zadám do poľa URL v prehliadači adresu ♣ dynamický názov hostiteľa ♣.getmyip.com. Poznámka: IP na domácich smerovačoch sa môže zmeniť bez predchádzajúceho upozornenia, ale to sa stáva zriedka. Rozhodol som sa použiť DynDNS. Budete potrebovať verejnú IP adresu smerovača.

Router U-Verse IP: ♣ uverse-public-ip ♣

Môžete si prezrieť svoje názvy hostiteľov a podrobnosti o účte DynDNS Pro. Tu je niekoľko tipov, ako začať:

  • Vytvorte svoje dynamické meno hostiteľa DNS (1 z 30):

    • ♣ názov dynamického hostiteľa ♣
    • Aktualizačný kľúč: ♣ dynamický-ip-aktualizačný kľúč ♣
  • Nainštalujte si aktualizačného klienta, aby ste zaistili, že váš názov hostiteľa bude vždy smerovaný na správnu adresu IP.

    • Stiahnite a nainštalujte na MacBook
    • IP adresy AT&T U-verse sa zriedka menia, takže aktualizátor vyššie môže byť spustený vždy, keď sa zmení
    • Postupujte podľa pokynov:

      • Pridať účet
      • Zadajte používateľské meno a heslo: ♣ dynamické-ip-používateľské meno ♣ ♣ dynamické-ip-heslo ♣
      • Vyberte názov hostiteľa
      • Kliknite na položku Konfigurovať vybraných hostiteľov
      • Hostiteľ by mal byť aktívny
    • Nakonfigurujte svoju sieť tak, aby umožňovala prístup k vášmu zariadeniu z internetu. Môžete použiť nášho Sprievodcu Dyn, ktorý vám poskytne všeobecné pokyny, ako to urobiť, použiť zdroje ako PortForward.com alebo sa obrátiť na výrobcu zariadenia so žiadosťou o pomoc.

      • Verzia AT&T U
      • Forwarding port for 2-Wire 3801HGV-this is the AT&T U-Verse router I have. Informácie o spôsobe prenosu dopredu na smerovači AT&T U-verse 5268ac nájdete v aktualizáciách v prílohe.
      • Otvorte prehliadač a prejdite na ♣ raspberry-pi-ip ♣
      • Heslo: ♣ heslo ♣
      • nastavenie
      • POŽARNE dvere

        • Vyberte ♣ raspberry-pi-hostname ♣
        • Servery

          • Port webového servera 80
          • Server HTTPS - port 443
        • Pridať
      • Uložiť

Akonáhle to urobíte, webový server bude fungovať z internetu. Na overenie zadajte ♣ názov dynamického hostiteľa ♣ a mali by ste vidieť tlačidlo otvárača garážových brán.

Krok 7: Pripojte obvod k Raspberry Pi

Pripojte obvod k Raspberry Pi
Pripojte obvod k Raspberry Pi

Pre poskytnutý kód (krok 4 a 6) som použil GPIO pin 7. Je náhoda, že GPIO 7 je to isté ako wiringPi pin 7. V kóde PHP sa používa zapojenie pinov Pi a NIE GPIO pin. Môžete použiť ľubovoľný z nich, ale nezabudnite zmeniť kód.

Skúsil som použiť skrútený vodič, ale relé na skrútenom drôte dobre nedrží. Lepší je pevný drôt.

Na prvý pokus som vytvoril tri prepojovacie káble (zásuvka-zásuvka).

  • Použite tri prepojovacie káble medzi ženami a ženami
  • Odrežte tri kusy pevného drôtu asi na 1 palec.

    Odizolujte 1/4in na oba konce plného drôtu

  • Vložte jeden pevný vodič do jedného samičieho prepojovacieho kábla.

Tu je lepší spôsob, ako vytvoriť prepojovacie káble (zásuvka-zásuvka):

  • Používajte iba pevný drôt
  • Odrežte tri 4 -palcové kusy pevného drôtu
  • Odizolujte 1/4in na oba konce plného drôtu
  • Použite samičie spojovacie kolíky

    • Na jeden koniec plného drôtu nasuňte jeden spojovací kolík a zvlňte

      Zásuvka by sa nemala uvoľniť, v prípade potreby spájkovať

    • Prevlečte odľahčenie ťahu cez spojovací kolík alebo krycí kolík pomocou elektrikárskej pásky

Pripojte relé k pí, ako je znázornené na obrázku:

  • Pripojte ženský koniec kábla k kolíku Raspberry Pi.
  • Vložte pevný vodič do relé.

Krok 8: Vytvorte službu pri spustení

Väčšina relé, vrátane zakúpeného, funguje takto:

  • Keď je signál ZAPNUTÝ, obvod zostane vypnutý.
  • Keď je signál VYPNUTÝ, obvod je zapnutý.

Ak Raspberry Pi stratí napájanie, relé má bezpečnostný mechanizmus, ktorý udržuje obvod VYPNUTÝ.

Problém môže nastať vtedy, keď sa Rapberry Pi a relé obnovia napájanie, ale skôr, ako Raspberry Pi dokončí bootovanie, aby sa zapol signál, ktorý je potrebný na vypnutie obvodu. Ráno by ste sa mohli zobudiť s otvorenou garážou a potenciálne aj s niekoľkými novými priateľmi!

Relé sa však v skutočnosti neinicializuje, kým nie je režim PIN GPIO nastavený pomocou tohto príkazu: gpio mode 7 out. Okrem toho, ak sa prepínač GPIO prepne do polohy ON (gpio write 7 1) pred nastavením režimu GPIO, relé zostane po inicializácii vypnuté.

Aby bola táto inicializácia spustená pri štarte a neprebudila sa z nových priateľov, použite nasledujúci štartovací skript.

$ ssh pi@♣ malina-pi-ip ♣

$ sudo nano /etc/init.d/garagerelay

Potom prilepte tento skript:

#! /bin/bash

# /etc/init.d/garagerelay # Vykonajte konkrétne funkcie, keď vás o to systémový prípad požiada „$ 1“pri štarte) echo „Spúšťacie relé“# Zapnite 7, čím zostane relé vypnuté/usr/local/bin/gpio write 7 1 #Spustite režim Gpio/usr/local/bin/gpio 7; stop) echo „Zastavenie gpio“;; *) echo "Použitie: /etc/init.d/garagerelay {start | stop}" exit 1;; esac exit 0

Ak chcete uložiť: CTRL-o, ENTER

Ak chcete ukončiť nano, CTRL-x

Nastaviť súbor ako spustiteľný:

$ sudo chmod +x /etc/init.d/garagerelay

Teraz povedzte svojmu pí, aby pri štarte spustil tento skript:

$ sudo update -rc.d -f garagerelay štart 4

(Poznámka: Varovanie „chýbajúce značky LSB“môžete pokojne ignorovať.)

Zaistite, aby bol spustený spúšťací skript

$ sudo reštart

Otvorte prehliadač a kliknite na otvárač. Relé by malo cvaknúť.

Krok 9: Pripojte Raspberry Pi do garáže

Pripojte Raspberry Pi do garáže
Pripojte Raspberry Pi do garáže

Pri presúvaní Raspberry Pi spustite:

$ shutdown -h 0

Možno budete chcieť vypnúť napájanie garáže. Otvárač zvončeka vás teda elektricky nezabije:). Skutočným dôvodom je, že pri každom skratovaní drôtov sa dvere budú pohybovať hore a dole.

Odskrutkujte skrutky na stenu z otvárača zvončeka, ktorý pripevňuje zvonček k stene.

Vykopnite dieru z garáže za otváračom zvončekov dovnútra domu. V Texase by Raspberry Pi nemal byť v garáži, kolísanie teploty v garáži je mimo prevádzkových špecifikácií Raspberry Pi.

Veďte káble relé cez otvor (použite vešiak na šaty).

Uvoľnite obe skrutky na zadnej strane otvárača zvončekov.

Odizolujte oba konce vodičov relé: 1) asi 1/8 palca na strane relé a asi ½ palca na strane zvončeka. Ohnite stranu zvončeka drôtu do polovičnej slučky, ktorá je dostatočne veľká na to, aby sa zmestila okolo skrutky na zadnej strane.

Pripojte jeden reléový vodič ku každej skrutke na zadnej strane zvončeka a utiahnite skrutku. Pripojenia sú také, ako je znázornené na obrázku. Pretože relé izoluje obvod, na smere ani nezáleží, ktoré relé je pripevnené ku ktorej skrutke.

Krok 10: Pripojte Raspberry Pi k SECO-LARM

Pripojte Raspberry Pi k SECO-LARM
Pripojte Raspberry Pi k SECO-LARM
Pripojte Raspberry Pi k SECO-LARM
Pripojte Raspberry Pi k SECO-LARM

Kým som mal kód hotový, boli sme s rodinou na dovolenke a otvoril som prehliadač. Posledný pohľad môjho prehliadača bol na otvárač garážových brán - stránka sa obnovila a garážové dvere sa otvorili. O niekoľko dní zavolal sused a spýtal sa, či majú byť garážové brány otvorené? Našťastie som ho mohol zavrieť zo vzdialenosti 500 míľ.

Toto snafu ma prinútilo zmeniť kód, aby sa to nestalo, a na webovú stránku pridať senzor a stav garážovej brány.

Toto je odkaz na pôvodný návod na pridanie senzora. Vzhľadom na všetko, čo už bolo dokončené, je však možné inštaláciu senzora výrazne zjednodušiť a namiesto použitia jazyka python pridať do index.php niekoľko riadkov kódu.

closed

Magnet je pripevnený k ľavej vnútornej hornej strane garážových brán a senzor je pripevnený k stene garáže. Musel som teda spustiť pevný vodič termostatu zo snímača späť na malinový pi. To si vyžiadalo otvor z garáže do podkrovia a z povaly do steny obsahujúcej otvárač garážových brán (spínač zvončeka).

Medzi snímač SECO-LARM a plné vodiče som vložil modrú spojovaciu skrinku.

V mojom dome je 18 -palcová medzera medzi stropom prvého poschodia a spodkom druhého poschodia. Predpokladám, že tu vedú vykurovacie a chladiace kanály. Potreboval som predĺženie vrtáka dostatočne dlhé na to, aby som prešiel druhým poschodím a horným 2x4 (horným plátom) obsahujúcim zvonček.

Najdôležitejšou súčasťou je, keď pri vŕtaní z podkrovia do oblasti, kde budú káble viesť k otváraču garážových brán, NEVRIEŤ elektrickú energiu. Riešenie tohto problému nebolo zábavné. Vidieť iskry a zhasnúť svetlá bolo celkom vzrušujúce!

Senzor vyžaduje dva pevné vodiče termostatu alebo neviditeľný drôt pre plot pre psa.

Raspberry Pi má viacero popisov pinov (BCM, wPi, fyzické). Kód používa čísla pinov elektroinštalácie. Ak chcete zobraziť všetky piny, mapovania pinov a hodnoty pinov, zadajte:

$ gpio readall

Pre príručku gpio zadajte:

$ gpio muž

V pôvodných pokynoch je fyzický kolík 9 uzemnený a pripája sa k jednému z vodičov SECO-LARM. Na mňa to však nefunguje. Namiesto toho pripojte zvody k fyzickým kolíkom 15 a 17

Fyzický kolík 15 (wPi kolík 3) ide na 3,3 V, keď je snímač SECO-LARM zatvorený. Fyzický kolík 17 je 3,3 V. Ak to nefunguje, prepnite pripojenia na SECO-LARM.

Pripevnite SECO-LARM na garážovú bránu a stenu. Spustite káble a pripojte sa k Raspberry Pi.

Krok 11: Odoslať upozornenie, ak sú dvere otvorené, keď by mali byť zatvorené

Ak sú garážové brány otvorené, aj keď by nemali byť, odošlite textovú správu na mobilný telefón.

Nainštalujte a nakonfigurujte jednoduchý SMTP.

Mám AT&T mobil a na textové správy používam ♣cell-phone-number♣@txt.att.net. Mám tiež účet v Gmaile a v nižšie uvedenom príklade je uvedené ♣gmail-account♣@gmail.com. Ak používate rôzne služby, vykonajte príslušné zmeny.

Pre nižšie uvedené príkazy $ otvorte na MacBooku okno terminálu a prihláste sa do svojho Raspberry Pi.

Zaistite, aby boli archívy aktuálne:

$ sudo apt-get aktualizácia

Nainštalujte si jednoduché SSMTP a poštové nástroje:

$ sudo apt-get install ssmtp

$ sudo apt-get install mailutils

Upravte konfiguračný súbor SSMTP:

$ sudo nano /etc/ssmtp/ssmtp.conf

nasledovne:

mailhub = smtp.gmail.com: 587 hostname = ♣ your-hostname ♣ AuthUser=♣gmail-account♣@gmail.com AuthPass = ♣ gmail-heslo ♣ UseSTARTTLS = YES

Upravte súbor aliasov SSMTP:

$ sudo nano/etc/ssmtp/revaliases

Vytvorte jeden riadok pre každého používateľa, ktorý bude môcť odosielať e -maily. Napríklad:

koreň: ♣gmail-account♣@gmail.com: smtp.gmail.com: 587

Nastavte povolenia konfiguračného súboru SSMTP:

$ sudo chmod 664 /etc/ssmtp/ssmtp.conf

Oprávnenia súboru /etc/ssmtp/ssmtp.conf určujú, kto bude môcť odosielať e -maily z Raspberry Pi. Štandardne je tento súbor vo vlastníctve užívateľa root a skupina súboru je tiež root.

Upravte súbor aliasov SSMTP, ktorý obsahuje údaje o e -mailových účtoch:

$ sudo nano /etc/ssmtp/ssmtp.conf

Po dokončení vyššie uvedeného procesu nastavenia a konfigurácie ho otestujte odoslaním e -mailu z príkazového riadka.

$ echo „zatvorte garážové dvere“| e-maily „Garážové dvere otvorené“♣cell-phone-number♣@txt.att.net

Vytvorte skript, ktorý skontroluje, či sú garážové brány otvorené, aj keď by nemali byť, a potom odošlite textovú správu.

$ sudo nano /usr/local/bin/garage.sh

a pridajte nasledujúce:

#!/bin/bash

# skontrolujte, či sú garážové brány otvorené. # Ak je otvorený, pošlite upozornenie a napíšte do syslog up = 0; door = $ (/home/pi/wiringPi/gpio/gpio read 3) if ["$ door" -eq "$ up"] logger ♣ your -hostname ♣: Garage Door Open echo "close the garage door" | mail -s "Garage Door Open" ♣cell-phone-number♣@txt.att.net fi exit 0

Potom pridajte crontab, aby sa spustil v požadovaných hodinách:

$ sudo crontab –e

a pridať:

# V noci každú hodinu skontrolujte, či sú garážové brány otvorené

0 22-23/1 * * * sudo /usr/local/bin/garage.sh 0 0-5/1 * * * sudo /usr/local/bin/garage.sh

Ak všetko funguje, prejdite na ďalší krok.

Krok 12: Vložte Raspberry Pi do tajnej knihy

Vložte Raspberry Pi do Tajnej knihy
Vložte Raspberry Pi do Tajnej knihy
Vložte Raspberry Pi do Tajnej knihy
Vložte Raspberry Pi do Tajnej knihy

Vložte malinový pi do tajnej knihy. Dostal som to u Michaela za asi 7 dolárov. Vyrezal som niekoľko malých otvorov pre drôty a napájací kábel.

Krok 13: Príloha: Referencie

2 -kanálový 5V reléový štítový modul SunFounder pre Arduino UNO 2560 1280 ARM PIC AVR STM32

  • Doska rozhrania 5-kanálového relé s 2 kanálmi a každá potrebuje 15-20 mA
  • Driver Driver Vybavený vysokoprúdovým relé, AC250V 10A; DC30V 10A
  • Štandardné rozhranie, ktoré je možné ovládať priamo mikrokontrolérom (logika Arduino, 8051, AVR, PIC, DSP, ARM, ARM, MSP430, TTL)
  • Indikačné LED diódy pre stav výstupu relé Odkaz na stiahnutie dokumentu:

Krok 14: Príloha: Aktualizácie

21FEB2016

  • V pôvodných pokynoch boli problémy s automatickými opravami, formátovaním a zrozumiteľnosťou pokynov.

    • Príkladom problému je, keď sa dvojité úvodzovky v kóde zmenia na niečo, čo vyzerá ako dvojité úvodzovky. Ak to však vystrihnete a vložíte do skriptu, nebude to fungovať.
    • Editor s pokynmi rád vykonáva automatické opravy, takže wlan sa obráti na plán a automatické odstránenie na automatické odstránenie. Tieto zmeny je ťažké rozpoznať.
    • Niektoré z mojich pokynov nemuseli byť dostatočne jasné.
    • Normálne používam uhlové zátvorky ako indikátor niečoho, čo je potrebné vymeniť. Editor ich skonvertuje na html. Prešiel som na hranaté zátvorky, ale tie môžu spôsobovať problémy, pretože vyzerajú ako kód. Nakoniec som sa usadil na ♣ s ako indikátora nahradenia skutočnou hodnotou.
  • Postupom času som tiež vylepšil niektoré skripty.
  • Upravené kroky 21-26

03APR2016

  • Vytvorený dodatok s riešením problémov, referenciami a aktualizáciami (kroky 27-29)
  • Riešenie problémov bolo presunuté do dodatku z predchádzajúceho kroku 2
  • Bola aktualizovaná a zoradená abecedne stránka na riešenie problémov
  • Zmenený názov súboru z test2wifi.sh na garage.sh - len popisnejší.
  • Bol aktualizovaný cron tak, aby používal garage.sh
  • Upravené 1, 20-26 (Vytvorte službu spustenia, aby ste urobili krok pred dodatkom)

04APR2016

  • Kroky 2-11 a 16-20 nahradené mojím štandardom boli pri inštalácii Raspberry Pi
  • Aktualizovaný zoznam dielov, krok 1
  • Pridané/zlúčené fotografie

05APR 2016

Zjednodušený web a obrázok (kroky 4 a 5)

01. MÁJ 2016

Pridané riešenie problémov so snímačom Seco-larm/malina Pi

01. MÁJ 2016

Predchádzajúce úpravy nie sú správne uložené?

11NOV2016

  • Aktualizovaný na AT&T GigaPower a zmenený smerovač na 5268ac
  • Server 5268ac nepodporuje spätnú slučku, takže server Garage Opener nie je prístupný z počítačov v sieti LAN. Aby mal MacBook prístup na webový server otvárača garáží, postupujte takto:

$ sudo nano /etc /hosts

a pridajte riadok

192.168.1.64 ♣ názov externej domény servera ♣

Uložiť a ukončiť, CTRL-o, CTRL-x

$ sudo killall -HUP mDNSResponder

  • Vstavané pravidlá presmerovania portov 5268ac, ako napríklad server HTTPS, server HTTP a webový server, nefungujú. Ak chcete, aby presmerovanie portov fungovalo:

    • Otvorte prehliadač a prejdite na 192.168.1.254
    • Prihlásiť sa
    • Vyberte položku Nastavenia, Firewall, Aplikácie, dierky a DMZ.
    • Vyberte webový server otvárača garáží
    • Vyberte položku Definované používateľom
    • Kliknite na novú aplikáciu definovanú používateľom

      • Do poľa Názov profilu aplikácie zadajte: PortForwarding
      • Do poľa Vytvoriť definíciu aplikácie pridajte nasledujúce položky a kliknite na položku Pridať do zoznamu:

        • TCP z 80 na 80, mapa na hostiteľský port 443
        • Mapa TCP z 443 na 443 na hostiteľský port 443
        • UDP od 443 do 443, mapa na hostiteľský port 443
        • UDP od 80 do 80, mapa na hostiteľský port 443
    • Kliknite späť
    • Znova vyberte svoj webový server
    • Vyberte položku Definované používateľom
    • Pridajte PortForwarding
    • Kliknite na položku Uložiť

21JAN2018

  • Aktualizované na Raspberry Pi 3
  • Niekoľko úprav krokov
  • Aktualizované niektoré diely a ceny

Krok 15: Príloha: Riešenie problémov

Využité miesto na disku

Posledný riadok zobrazuje celkové použité miesto na disku. Karta SD má 8 GB.

$ cd../..

$ sudo du –hx –c

e -mail

Ak máte problémy, vyskúšajte toto:

$ echo „test“| sendmail -v ♣vasa-gmail-account♣@gmail.com

Ak je e -mail nastavený správne, mali by ste dostať e -mail na svoj účet Gmail.

Ak dôjde k zlyhaniu overenia:

Možno budete musieť znížiť zabezpečenie svojho účtu. Zníženie zabezpečenia sa však neodporúča. Google odošle e -mail s odkazom na nižšie nastavenia zabezpečenia.

Môžete prepnúť z aktuálnej čítačky e -mailov na prístup na svoj účet www.gmail.com (odporúča sa) alebo zmeniť svoje nastavenia na stránke https://www.google.com/settings/security/lesssecu…, aby váš účet už nebol chránené modernými bezpečnostnými štandardmi.

Neodporúčam znižovať vaše bezpečnostné štandardy.

Ak dôjde k zlyhaniu autorizácie:

Najpravdepodobnejšou príčinou je to, že ste v súbore /etc/ssmtp/ssmtp.conf zadali nesprávne používateľské meno alebo heslo pre svoj účet Gmail. Dôkladne skontrolujte hodnoty polí AuthUser a AuthPass.

Ak sa v priebehu spracovania spojenie stratí:

Je pravdepodobné, že ste zadali nesprávny port pre server Google smtp niekde v súbore /etc/ssmtp/ssmtp.conf alebo v/etc/ssmtp/revaliases.

Skontrolujte posledné riadky svojich denníkov. Malo by tam byť niekoľko relevantných chybových hlásení:

$ tail /var/log/mail.log

$ tail/var/log/syslog

Garážová brána sa neotvorí

Ak všetko fungovalo a jednoducho sa to zastavilo, skúste reštartovať. Ak to nefunguje, vytiahnite napájací kábel z Raspberry Pi a potom obnovte napájanie. Raspberry Pi by sa mal reštartovať za menej ako 2 minúty a všetko by malo fungovať dobre. Spravidla je to spôsobené stratou napájania obytnej brány.

GPIO

Ak sa niečo pokazí, najlepší spôsob, ako zistiť, čo sa deje, je nasledujúci príkaz:

$ gpio readall

Prihláste sa na Raspberry Pi z MacBooku

terminal je utilita MacBook: disk/aplikácie/pomocné programy/terminál. Aplikáciu terminálu držím v doku.

Na MacBooku otvorte terminál

$ ssh pi@♣ malina-pi-ip ♣

♣ heslo ♣

Prihláste sa do rezidenčnej brány

Na MacBooku otvorte prehliadač

URL = ♣ malina-pi-ip ♣

Prihlásenie: ♣ heslo brány ♣

Záznamy

Ak sa niečo pokazí, skontrolujte, či v týchto denníkoch nie sú chyby, varovania alebo iné problémy.

$ cat/var/log/správy

$ cat/var/log/syslog $ cat/var/log/dmesg

Adresár MAC

Adresár na MacBooku, kde sú uložené súbory webových stránok

Adresár MAC =/Používatelia/♣ môj macbook ♣/Desktop/wi-fi povolený domov/wifi otvárač garážových brán/web

Heslo

Heslo = ♣ heslo maliny-pi ♣

Použitá RAM a CPU

$ hore

CTRL-c na ukončenie

Domovský adresár Raspberry Pi

$ pwd

/domov/pi

Názov hostiteľa Raspberry Pi

$ hostname

hostname = ♣ názov hostiteľa ♣

Raspberry Pi IP

♣ malina-pi-ip ♣ = 192.168.1.93

Adresár webových stránok Raspberry Pi

/var/www

Seco-larm prestáva fungovať

Dňa 01MAY2016 Seco-larm prestal fungovať. Toto je tretíkrát, čo senzor prestal fungovať. Aby sme to povedali správne, fyzický kolík 15 na Raspberry Pi prestal detekovať vstup 3,3 V. Skúsil som 3,3 V fyzické piny 1 a 17 a obidva stále produkovali 3,3 V. Prešiel som z fyzického pinu 15 na iný GPIO, fyzický pin 16 (GPIO 4) a opäť to začalo fungovať. Na Seco-larme teda nie je nič zlého. Zdá sa, že problém je s Raspberry Pi GPIO.

GPIO 3, fyzický kolík 15 je mŕtvy. Je to veľmi dobrý príspevok o testovaní pinov GPIO.

Prešiel som z GPIO 3 na GPIO 4 a podľa toho som zmenil kód. Nie som si istý, prečo pin GPIO prestal fungovať. Tu sú dva možné dôvody:

  • Mám namontovaný snímač Seco-larm, takže keď sú dvere zatvorené, vydáva 3,3 V. Garážová brána sa častejšie zatvára, než sa otvára. Pin GPIO pravdepodobne nemôže mať viac-menej konštantný vstup 3,3 V.
  • Porucha sa zhodovala so stratou energie, pravdepodobne došlo k nárastu napájania.

U-verse Obytná brána

Mám AT&T U-verse s obytnou bránou, ale každá služba by mala fungovať.

Ak sa brána U-verse Gateway reštartuje alebo stratí napájanie, bude pravdepodobne potrebné reštartovať Raspberry Pi.

U-verse obytná brána Verejná IP = ♣ router's-public-ip ♣

Verejná IP adresa bytovej brány vo verse sa môže meniť, ale robí to veľmi zriedka

Domovská stránka rezidenčnej brány U-verse = 192.168.1.254

SSID bezdrôtového prístupového bodu smerovača U-verse Router = s ssid ♣

Priepustnosť WiFi je pomalšia, ako sa očakávalo

Zmeňte smerovač na menej používaný kanál. V predvolenom nastavení všetci poskytovatelia obvodov naladia wifi všetkých na kanál 1. Zmeňte na menej používaný kanál, napríklad 11. Skúste použiť nepárne číslo.

Poznámka: Povedal som pár susedom, čo som urobil, aby som zlepšil wi-fi a teraz sú všetci na 9 alebo 11, takže som sa vrátil na 1. Vždy by ste mali používať nepárny kanál.

Otvorte prehliadač.

V prípade U-verse zadajte do poľa pre adresu URL 192.168.1.254.

Kliknite na Bezdrôtové prepojenie a vyberte kanál 6 alebo 11.

Existuje aplikácia pre chytrý telefón s názvom wifi analyzátor. Jeden z displejov zobrazuje všetky blízke prístupové body WiFi vysielané na konkrétnom kanáli. V mojom okolí je každý nastavený na kanál 1.

Odpojte Raspberry Pi a potom obnovte napájanie

Odporúča: