Sisukord:

Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes: 5 sammu
Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes: 5 sammu

Video: Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes: 5 sammu

Video: Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes: 5 sammu
Video: CS50 2013 - Week 9 2024, September
Anonim
Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes
Koduautomaatika Androidi ja Arduino abil: avage värav koju jõudes

See juhend on seotud koduautomaatikasüsteemi seadistamisega, mida saab Interneti -ühenduse kaudu juhtida nutitelefoni kaudu, nii et sellele pääseb juurde kõikjal, kus seda vajate. Lisaks teostab see teatud toiminguid alati, kui kriteeriumid on täidetud (näiteks lülitab valguse sisse, kui nutitelefon ühendab koduse WiFi -võrguga, avab värava, kui sisenete GPS -i määratud piirkonda, või kõik muu, mida soovite).

Kasutatakse olemasolevat androidi rakendust, mis nõuab võimalikult vähe kodeerimist: laadige kood lihtsalt üles ja oletegi valmis. Aju - mikrokontroller - on Arduino või Arduinoga ühilduv plaat, näiteks Aruino Uno koos Etherneti kilbiga või NodeMCU ESP8266.

Süsteemi käivitamiseks, kui mõni tingimus on täidetud (GPS -asukoht, aeg jne), kasutame kurikuulsat Taskerit; sellest lähemalt hiljem.

Süsteemi realiseerimisel on silmas peetud järgmisi põhipunkte:

  • See peab olema odav.
  • See peab olema juurdepääsetav väljastpoolt kohalikku koduvõrku (st teie wifi).
  • Selle ehitamine ja seadistamine peab olema TÕESTI lihtne ja kiire.
  • See peab olema usaldusväärne.

See tähendab, et kogu projekt maksab umbes 20 eurot (7,50 eurot ESP8266 eest, 8 eurot releeplaadi eest, ülejäänud täiendava riistvara eest) ja võtab selle seadistamiseks aega umbes 30 minutit - pole üldse halb.

Seega, kui olete huvitatud, järgige seda lihtsat ja kiiret juhendit ning seadistage oma!

Samm: riistvara seadistamine

Riistvara seadistamine
Riistvara seadistamine

Kui olete kõik komponendid kokku kogunud, tuleb esimese asjana kõik juhtmed ühendada.

Selles näites ühendame lambipirni ESP8266 külge; pidage meeles, et peate põhipingega töötades olema äärmiselt ettevaatlik - majad kasutavad 220 V pinget, mis võib teid tappa! Enne töötamist katkestage alati toide ja kui te pole kindel, otsige asjatundlikku abi!

Sellegipoolest: sellise pinge- ja voolutaseme (mis pisikese ESPR8266 läbi põletab) käsitlemiseks peame kasutama sobivat releed (nagu see on 5 V loogika, mis sobib tavalise Arduino jaoks või see, 3,3 V loogika taseme relee, sobib ESP82666 3,3 V pistikule); ühendused on üsna lihtsad, järgige lisatud skeemi.

Pange tähele, et mõned releeplaadid (nagu see, mille oleme linkinud) on ACTIVE LOW; see tähendab, et peate relee sisselülitamiseks ühendama maandusega ja vastupidi. Kui see on teie juhtum, pakub Homotica kena lahenduse; millises näeme järgmises lõigus.

Samm: ESP8266 seadistamine

ESP8266 seadistamine
ESP8266 seadistamine
ESP8266 seadistamine
ESP8266 seadistamine
ESP8266 seadistamine
ESP8266 seadistamine

Nüüd, kui oleme seadistanud automaatikasüsteemi riistvara, peame programmeerima mikrokontrolleri.

Selleks vajame Arduino tarkvara, et üles laadida eskiis ESP8266 -sse; nii et navigeerige Arduino allalaadimislehele ja haarake endale sobivaim versioon.

Pärast allalaadimist installige see.

Nüüd, kui oleme oma IDE installinud, vajame eskiisi toimimiseks vajalikku raamatukogu; selle installimiseks avage rakendus Github Repo ja valige paremal asuvast rohelisest nupust Laadi alla.

Minge oma arvutisse kausta Laadi alla ja kasutage faili, näiteks WinRar või WinZip, lahti pakkimiseks; avage äsja loodud kaust "homotica-master" ja kopeerige sisemine kaust nimega "Homotica" kausta Arduino Editor Libraries (tavaliselt leiate selle kaustast C: / Users / your_user_name / Documents / Arduino / libraries). Kustutage ülejäänud failid "homotica-masterist", meil pole neid vaja

Koodi ESP8266 -sse üleslaadimisel on puudu üks samm: me peame hankima kogu, et Arduino IDE tahvliga suhelda, kuna seda ametlikult ei toetata.

Selleks järgige neid samme (krediit: Github ES8266 Arduino Repo):

  • Käivitage Arduino ja avage aken Failid> Eelistused.
  • Sisestage väljale Täiendavad juhatusehalduri URL -id "https://arduino.esp8266.com/stable/package_esp8266com_index.json" (ilma jutumärkideta). Saate lisada mitu URL -i, eraldades need komadega.
  • Avage Boards Manager menüüst Tools> Board ja installige platvorm esp8266 (otsige "esp8266" ja laadige alla "esp8266 by ESP8266 Community").

Kõik on seadistatud. Hoolitseme visandikoodi eest.

Avage Fail> Näide> Homotica> Homotica ESP8266, kopeerige KÕIK kood uude visandisse ja muutke järgmisi parameetreid:

  • ssid: sisestage siia oma traadita võrgu nimi
  • parool: teie wifi parool
  • ip, lüüs, alamvõrk: tõenäoliselt ei pea te neid seadeid puudutama; muutke ip -d, kui soovite, et teie ESP8266 -l oleks erinev aadress
  • mUdpPort: port, mille me hiljem ruuteris avame; kui te ei tea, mis see on, ärge puudutage seda
  • kood: ainulaadne 8-tähemärgiline kood, mida kasutatakse teie rakenduse autentimiseks; saate valida, mida soovite.

Kui kasutate seadistust ACTIVE LOW, ärge unustage helistada homotica.setActiveLow (), nagu näidiskoodis näidatud!

Selle lõpetamiseks: lisage homotica.addUsedPin (5) (nagu näites näidatud), et öelda ESP8266 -le, millise GPIO -ga ta peab hakkama, while -tsükli ja homotica.set vahel (mUdpPort, kood); kustutage kõik read homotica.simulateUdp (…).

See kood peaks teile jääma:

#kaasake

#include #include const char* ssid = "mywifiname"; const char* parool = "wifipassword"; IPAdd ip (192, 168, 1, 20); IPAddressi lüüs (192, 168, 1, 1); Alamvõrk IPAddress (255, 255, 255, 0); allkirjastamata int mUdpPort = 5858; staatiline stringikood = "aBc159"; Homotica homotica; void setup () {WiFi.config (ip, lüüs, alamvõrk); WiFi.begin (ssid, parool); while (WiFi.status ()! = WL_CONNECTED) {delay (500); } homotica.addUsedPin (5); homotica.setActiveLow (); // <- ainult vajadusel homotica.set (mUdpPort, kood); } void loop () {homotica.refresh (); }

Kui kõik on õigesti seadistatud, muutke kompilaatori seadeid menüüst Tööriistad vastavalt lisatud ekraanipildile ja valige port, millega teie ESP8266 on teie arvutis ühendatud, menüüs Tööriistad> Pordi.

Nüüd klõpsake nuppu Laadi üles. Teie mikrokontroller on kõik seadistatud ja töövalmis!

Samm: ruuter ja IP

Ruuter ja IP
Ruuter ja IP
Ruuter ja IP
Ruuter ja IP

Igast võrgust ESP8266 -ga suhtlemiseks peame ruuteril ütlema, et ta annaks käsu, mille me talle saadame.

Selleks liikuge oma ruuteri konfiguratsioonilehele (tavaliselt 192.168.1.1) ja otsige midagi sellist nagu "virtuaalserver" või "pordi edastamine"; saate oma ruuterimudeli täpsed seaded Google'is otsida.

Pordi edastamisel looge uus reegel, mis võimaldab kõiki ühendusi ESP8266 -ga (varem konfigureeritud) ESP8266 pordi kaudu (jällegi varem konfigureeritud). Pange sellele nimi Homotica, sisestage ESP8266 IP IP -väljale ja salvestage.

Kui kasutatav ruuter ei võimalda teil seda teha, ärge muretsege: te ei saa mobiilsidevõrgust rakendust kasutada, kuid see töötab teie kodu WiFi kaudu suurepäraselt.

Nüüd, et viidata meie ruuterile välismaailmast, peame teadma selle avalikku IP -d; negatiivne külg on see, et enamik Interneti -teenuse pakkujaid ei anna teile staatilist IP -d, vaid selle asemel dünaamilist IP -d, mis aja jooksul muutub.

Kuid oodake, me saame selle lahendada!

Minge lehele NoIp, looge uus konto ja seejärel looge uus hostinimi (vt lisatud pilti). Pange tähele, milline hostinimi teil on (minu näites: https://yourhostname.ddns.net) ja jätkake järgmise sammuga.

(Märkus: võib -olla soovite, et teie arvuti sünkrooniks automaatselt teie ruuteri IP -aadressi teie NoIp -i hostinimega: laadige selleks alla nende tasuta rakendus)

Samm: rakenduse seadistamine

Rakenduse konfiguratsioon
Rakenduse konfiguratsioon
Rakenduse konfiguratsioon
Rakenduse konfiguratsioon
Rakenduse konfiguratsioon
Rakenduse konfiguratsioon

Hooligem rakenduse eest, kas pole?

Laadige rakendus Play poe lehelt alla ja avage see.

Avage vasakpoolne menüü, valige Lauad ja looge uus. Täidame parameetrid, mille oleme ESP8266 eskiisikoodis eelnevalt määratlenud:

  • Arduino nimi: mida soovite (olgu see ESP8266)
  • Hosti IP: see võib olla
    • ruuteri staatiline IP, millele viidatakse NoIp -lingi kaudu
    • ESP8266 IP, kui soovite seda kasutada ainult koduse WiFi -võrgu seest 192.168.1.20
  • Hostport: see, mille seadistasime ja avasime varem 5858
  • Autentimiskood: visandis aBc195 määratletud 8-tähemärgiline kood

Salvesta. Avage menüü uuesti, looge uus seade; kinnitame demonstreerimiseks lambipirni:

  • Nimi: kerge
  • Nupu nimi: kasutame nuppu Sees, valige, mida eelistate
  • Tihvti number: tihvt, mille külge me lambipirni kinnitasime. Ole ettevaatlik! ESP8266 -l tihvtide sildid (D1, D2…) EI vasta GPIO PIN -i nimele! Otsige Google'ist, et määrata, milline tihvt on GPIO (meie näites: tihvt 5 on märgistatud D1)
  • Käitumine: saate valida seadme sisselülitamise, väljalülitamise ja "surumise" (sisse- ja väljalülitamise) oleku muutmise vahel.

Salvesta. Kui olete siiani kõik õigesti seadistanud, peaks lambipirni sisselülitamine sisse lülituma.

Lahe, kas pole?

Nüüd saate lõbusalt lisada rohkem seadmeid, veelgi rohkem tahvleid ja paigutada need stseenidesse.

Kuid selleks, et täiel võimsusel kasutada seda, mida just lõite, peame kasutama Taskerit.

Samm 5: Taskeri integreerimine

Taskeri integreerimine
Taskeri integreerimine
Taskeri integreerimine
Taskeri integreerimine
Taskeri integreerimine
Taskeri integreerimine

Kui teil on Tasker või soovite seda osta, lugege edasi! Me kasutame seda, et öelda Homoticale, mida ja millal teha.

Selles näites lülitame valguse sisse alati, kui ühendame oma koduse wifi -ga ja kellaaeg on vahemikus 16.00–18.00.

Ava Tasker; looge uus ülesanne (pange sellele nimi Valguse sisselülitamine), valige Lisa> Plugin> Homotica, vajutage pistikprogrammi konfigureerimiseks pliiatsi nuppu. Valige Light> On ja Save. Tagasi peamenüüsse looge uus profiil, valige Olek> WiFi ühendatud, sisestage ekskursiooni Wifi nimi väljale SSID; vajutage tagasi ja valige Lülita valgus sisse kui tegevus. Nüüd vajutage pikalt vastloodud profiili vasakut osa, valige Lisa> Aeg> Kell 16–18, seejärel sulgege.

Me saime valmis. Meie tuli süttib, kui me siseneme koju määratud ajal.

See on käepärane!

Nüüd on teie kord: olge Homotica ja Taskeriga loov ning ärge unustage meile näidata, mida olete loonud!

Soovitan: