Turinys:

Garažo durų atidarytuvas naudojant „Raspberry Pi“: 5 žingsniai (su nuotraukomis)
Garažo durų atidarytuvas naudojant „Raspberry Pi“: 5 žingsniai (su nuotraukomis)

Video: Garažo durų atidarytuvas naudojant „Raspberry Pi“: 5 žingsniai (su nuotraukomis)

Video: Garažo durų atidarytuvas naudojant „Raspberry Pi“: 5 žingsniai (su nuotraukomis)
Video: Siltnamio lango atidarymas. Savadarbe automatika 2024, Liepa
Anonim
Garažo durų atidarytuvas naudojant „Raspberry Pi“
Garažo durų atidarytuvas naudojant „Raspberry Pi“

Valdykite garažo variklį iš išmaniojo telefono ar bet kurio įrenginio, galinčio naršyti tinklalapį (naudodami AJAX!). Projektas buvo pradėtas, nes savo garaže turėjau tik vieną nuotolinio valdymo pultą. Kaip buvo smagu nusipirkti antrą? Nepakankamai. Mano tikslas buvo sugebėti vienu puslapiu valdyti ir stebėti savo garažo duris iš savo išmaniojo telefono. Aš neįdėjau jokio įmantraus saugumo, nes RPi nėra rodomas už mano LAN ribų. Taigi, norėdamas pasiekti tinklalapį, pasikliauju VPN. Naudojant „Android“išmanųjį telefoną labai lengva nustatyti VPN ir pridėti tinklalapį prie pagrindinio ekrano. Viskas, ko man reikėjo, buvo tam skirta programinė įranga.

Jei norite padėti man rašyti kitus nurodymus, įsigykite aparatūros iš „Amazon“remiamų nuorodų.

Be to, šį nurodymą dabar taip pat galite rasti mano asmeniniame puslapyje:

1 žingsnis: tam tikras fonas

Ką radau internete

Kaip programuotojas, man patinka pakartotinai naudoti vadovėlius arba jau „gamybos lygio“kodą. Šiuo atveju buvau nepatenkintas tuo, ką radau:

  • „Raspberry Pi“garažo durų atidarytoja, atlikusi kvartalą. Kur aš pradėjau, paprastas mygtukas valdyti relę. Nėra atidarymo/uždarymo mygtukų, nėra atsiliepimų. Vis dėlto buvo labai naudinga suprasti koncepciją, skirtą specialiam RPi valdyti variklį iš relės. Kabeliai, kuriuos dabar naudoju, komandinėje dalyje vis dar yra tie patys.
  • „Raspberry Pi“garažo durų atidarytuvas su „Charage Chou“„GaragePi“. Ta pati sąranka, bet naudojant papildomą belaidį nuotolinio valdymo pultą. Aš nenorėjau nužudyti vienintelio nuotolinio valdymo pulto. Įrodyta, kad komandinei daliai vis tiek buvo naudojama ta pati elektros sąranka. Pakeliui sužinojau apie „WebIOPi“, norėdamas patikrinti savo GPIO tinklalapyje. Taip pat sužinojau, kaip įdėti nuorodą į „Android“pagrindinį ekraną. Taip pat pradėjo šviesti idėja pasikliauti paslaugomis, juk noriu, kad ji būtų patikima.
  • Garažo durų siuntimas el. Paštu, tviteryje ar SMS žinute: 1 dalis Richard L. Lynch. Šis pridėjo idėją naudoti magnetinį jutiklį durų būsenai valdyti. Tačiau aš nenaudojau daug, nes kūriau ne signalizacijos sistemą, o komandų/stebėjimo sistemą.
  • Visiškai belaidis „DeckerEgo“garažo durų atidarytuvas / apsaugos kamera. Tai leido man geriau žinoti apie internetinių kamerų transliaciją, kad galėčiau stebėti duris. Aš vis tiek turiu tam pasistengti. Galbūt turėčiau perdirbti USB šakotuvą arba pasiimti kitą internetinę kamerą.
  • „Raspberry Pi“valdymas iš mobiliojo prietaiso ar darbalaukio žiniatinklio naršyklės, kurį sukūrė Frédérick Blais. Dabar tai mano programinės įrangos paketo pagrindas. Jis naudoja „Flask“labai paprastam tinklalapiui paleisti kartu su AJAX. Man tai yra aukščiausios kokybės, nes ji suteikia stebėjimo ir komandų parinktis realiuoju laiku. Skaitykite apačioje.

Apie mano RPi

Kadangi vis dar mokausi apie RPi ir apskritai elektroninius dalykus, aš ką tik įsigyjau ką tik įsigytą „Raspberry Pi“: kelis kabelius, T-cobblerį, kai kuriuos šviesos diodus, vienos relės modulį, aštuonias reles modulis, LCD ekranas ir pan. Aš jokiu būdu nesu elektronikas ir tai pasirodė labai pamokanti. Norėdami nusipirkti papildomos aparatūros, „Amazon“ir „Ebay“yra jūsų geriausi draugai.

Dabartinė projekto būklė apima šią techninę įrangą:

  • „Raspberry Pi“(FR/DE), kuriame veikia „Raspbian Wheezy“2014-09-09 su naujausiais atnaujinimais
  • 8 GB (FR/DE) arba 16 GB (FR/DE) arba 32 GB (FR/DE) 10 klasės „micro SD“kortelė, skirta OS, failams ir pan.
  • Du cinko lydinio garažo nendriniai jungikliai (FR/DE), skirti aptikti atidarymo/uždarymo būseną
  • Vienas 3 V relės modulis (FR/DE) komandoms siųsti į durų variklį (mano yra įmontuotas šviesos diodas, skirtas stebėti relės būseną, labai patogu!)
  • Duonos lenta be litavimo (FR/DE) ir 2 momentiniai jungikliai (FR/DE), skirti imituoti mano stalo duris (arba gauti pradinį rinkinį (FR/DE))
  • „Wi -Fi“raktas (FR/DE), skirtas pašalinti papildomus laidus, kai jis kabės nuo garažo lubų

Vis dar turiu apribojimą, kad nežinau, kada durys yra pusiaukelėje, sustojo ar vis dar juda. Dėl šios priežasties vėliau norėčiau pridėti seną internetinę kamerą srautui iš garažo vidaus. Tikriausiai aš iš tikrųjų pridėsiu jutiklį, kuris stebės patį variklį.

2 žingsnis: programinės įrangos kaminas

Programinės įrangos kaminas
Programinės įrangos kaminas

Bendri dalykai

Programinė įranga remiasi „Python“, „Flask“ir „WiringPi GPIO Python“moduliais. Kaip paaiškinta fone, pradėjau nuo „Raspberry Pi“valdymo iš mobiliojo įrenginio ar darbalaukio žiniatinklio naršyklės, kurią paskelbė Frédérick Blais. Dabartinę programinę įrangą sudaro:

  • HTML šablono failas, kuriame yra tam tikras „jQuery Mobile“kodas ir valdikliai
  • „Python Pins“modulis, skirtas prieiti prie „Raspberry Pi“GPIO
  • „Python go“modulis, skirtas paleisti „Flask“ir palaikyti AJAX užklausas

Saugykloje yra neapdorota programinė įranga. Tai jokiu būdu nėra išgalvotas ar perpildytas funkcijų. Tiesiog tai, ką galėjau pasiekti iš to, ką išmokau.

Dabartinė sąsaja

Šiuo metu durų būsena skaitoma kas 0,5 sekundės. Atidarymo/uždarymo būsenai naudojami du jungikliai. Varikliui valdyti naudojama relė. Dabartinis kodas vis tiek pateikia tam tikrą derinimą. Žemiau ekrano kopija yra iš „Nexus 5“.

3 žingsnis: aparatinė įranga - alfa

Techninė įranga - alfa
Techninė įranga - alfa
Techninė įranga - alfa
Techninė įranga - alfa

Bandymo lova

Mano bandymų lova yra gana paprasta, RPi, relė ir du jungikliai. Norėdami tvirtai laikyti daiktus, jums reikia kelių užtrauktukų (FR/DE). Čia yra jo nuotrauka. RJ45 LAN kabelis (FR/DE) skirtas darbalaukio derinimui ir WIFI raktas, skirtas naudoti garaže.

Tiesioginė sistema

RPi prie durų variklio yra prijungtas tik kol kas, po to seka jungikliai. Turiu šiek tiek palaukti, kol gausiu termiškai susitraukiantį vamzdelį (FR/DE). Aš taip pat turėčiau būti pastovesnis. Atsiprašau už neryškumą.

Kairėje esantys mėlyni, geltoni ir žali kabeliai skirti magnetiniams jungikliams.

  • Mėlyna yra GND
  • Geltona ir žalia yra 18 (atviros būsenos) ir 27 (uždarytos būsenos) kaiščiai.

4 žingsnis: Aparatūra - beta versija

Techninė įranga - Beta
Techninė įranga - Beta
Techninė įranga - Beta
Techninė įranga - Beta
Techninė įranga - beta versija
Techninė įranga - beta versija

Bandymo lova

Dabar tai yra tiesioginis kartonas su užtrauktukais. LCD ir relė taip pat yra komplekte. Skystųjų kristalų ekranas yra 20x4 (20 simbolių eilėms, 4 eilutės) (FR/DE) virš I²C.

Pirmosios 2 eilutės rodo sveikinimą ir datą/laiką. Paskutinės 2 eilutės veikia tarp kaiščių būsenų ir tinklo būsenos (eth0/wan0 IP). Durų būsenos linija yra puikus GFX, kuriame galima pasakyti:

  • | | yra atviras
  • |-| veikia
  • |. | yra uždarytas

Fritzavimo schemos

Fritzing schema su 20x4 I2C LCD, atidarymo/uždarymo jungikliais ir relėmis. Vienintelis papildymas yra I2C LCD ekranas. Man labiau patiko 18x2, kokį turėjau.

Tiesioginė sistema

Beta HW dabar yra „gamybos lygio“, nes gražiai telpa į seną varžtų dėžę. Aš laikiau vieną separatorių, kad galėčiau priimti relės ir įvairius laidus, o RPi yra žemesniame lygyje. Galite pastebėti „Synology NAS“(FR/DE) dešinėje pusėje, jis naudojamas tiesiogiai RPi maitinti. Naktį su modemu, jungikliu ir NAS.

Uždaryti varžtų dėžutės vaizdą, LCD rodo durų būseną ir atidarymo/uždarymo/relės kontaktą.

Naktį vidinis vaizdas iš viršaus.

5 žingsnis: šaltinio kodas ir ištekliai

Visus išteklius galite rasti šioje „GitHub“saugykloje:

github.com/amayii0/GarageOpenerR1

Rekomenduojamas: