Innholdsfortegnelse:

Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem: 5 trinn
Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem: 5 trinn

Video: Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem: 5 trinn

Video: Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem: 5 trinn
Video: Главная Автоматизация с помощью SMS - Использование и коды использования GSM-клавиатуры Arduino 2024, September
Anonim
Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem
Hjemmeautomatisering med Android og Arduino: Åpne porten når du kommer hjem

Denne instruksen handler om å sette opp et hjemmeautomatiseringssystem som skal styres via smarttelefon, ved hjelp av en internettforbindelse, slik at det kan nås fra hvor som helst du trenger det. Dessuten vil den utføre visse handlinger når et kriterium er oppfylt (som for eksempel å slå på lyset når smarttelefonen kobles til hjemmets wifi -nettverk, åpne porten når du går inn i et GPS -bestemt område eller alt annet du måtte ønske).

En eksisterende Android -applikasjon vil bli brukt, noe som krever minst mulig koding: Bare last opp koden og du er ferdig. Hjernen - mikrokontrolleren - vil være et Arduino- eller Arduino -kompatibelt kort, for eksempel en Aruino Uno med et Ethernet -skjold eller en NodeMCU ESP8266.

For å utløse systemet når en betingelse er oppfylt (GPS -posisjon, tid, ecc …) bruker vi den beryktede Tasker; mer om det senere.

Ved realisering av systemet har følgende viktige punkter blitt husket:

  • Det må være billig.
  • Den må være tilgjengelig fra utenfor det lokale hjemmenettverket (dvs. wifi).
  • Det må være VIRKELIG enkelt og raskt å bygge og sette opp.
  • Det må være pålitelig.

Når det er sagt, vil hele prosjektet koste ca..

Så hvis du er interessert, følg denne enkle og raske guiden, og sett opp din egen!

Trinn 1: Konfigurere maskinvaren

Sette opp maskinvaren
Sette opp maskinvaren

Når du har samlet alle komponentene dine, er det første du må gjøre å koble alt sammen.

I dette eksemplet vil vi koble til en lyspære til ESP8266; Husk at du må være ekstremt forsiktig når du arbeider med hovedspenninger - hus bruker 220V, det kan drepe deg! Kutt alltid strømmen før du arbeider med den, og hvis du ikke er sikker, kan du søke etter en eksperthjelp!

Når det er sagt: for å håndtere slike spenningsnivåer og strøm (som vil brenne ut den lille ESPR8266) må vi bruke et passende relé (som dette som er 5V logikk, egnet for standard Arduino, eller dette, et 3.3V logisk nivårelé, egnet for 3.3V pinout av ESP82666); tilkoblingene er ganske enkle, følg diagrammet vi har vedlagt.

Vær oppmerksom på at noen relékort (som det vi har koblet til) er ACTIVE LOW; dette betyr at du må koble reléet til bakken for å slå det på, og omvendt. Hvis dette er ditt tilfelle, tilbyr Homotica en fin løsning; vi får se hvilken i neste avsnitt.

Trinn 2: ESP8266 -konfigurasjon

ESP8266 -konfigurasjon
ESP8266 -konfigurasjon
ESP8266 -konfigurasjon
ESP8266 -konfigurasjon
ESP8266 -konfigurasjon
ESP8266 -konfigurasjon

Nå som vi har konfigurert maskinvaren til automatiseringssystemet, må vi programmere mikrokontrolleren.

For å gjøre det, trenger vi Arduino -programvaren for å laste opp den medfølgende skissen til ESP8266; så naviger til Arduino nedlastingsside og finn den versjonen som passer best for deg.

Når den er lastet ned, installerer du den.

Nå som vi har IDE installert, trenger vi biblioteket som trengs for at skissen skal fungere; For å installere den, åpne App Github Repo og velg Last ned fra den grønne knappen på høyre side.

Gå til nedlastingsmappen på PCen, og bruk en programvare som WinRar eller WinZip til å pakke ut filen; åpne den nyopprettede mappen "homotica-master" og kopier den indre mappen som heter "Homotica" til Arduino Editor Libraries-mappen (du finner den vanligvis under C: / Users / your_user_name / Documents / Arduino / libraries). Slett de resterende filene i "homotica-master", vi trenger dem ikke

Ett trinn mangler ved å laste opp koden til ESP8266: vi må skaffe biblioteket for å få Arduino IDE til å kommunisere med styret, for det er ikke offisielt støttet.

For å gjøre det, følg disse trinnene (studiepoeng: Github ES8266 Arduino Repo):

  • Start Arduino og åpne Filer> Preferanser -vinduet.
  • Skriv inn "https://arduino.esp8266.com/stable/package_esp8266com_index.json" (uten anførselstegn) i feltet Ytterligere nettadresser for styringsleder. Du kan legge til flere nettadresser og skille dem med kommaer.
  • Åpne Boards Manager fra Verktøy> Styremeny og installer esp8266 -plattformen (søk etter "esp8266" og last ned "esp8266 av ESP8266 Community").

Alt er satt opp. La oss ta vare på skissekoden.

Åpne Fil> Eksempel> Homotica> Homotica ESP8266, kopier ALLE koden i en ny skisse og modifiser følgende parametere:

  • ssid: legg inn navnet på det trådløse nettverket ditt her
  • passord: ditt wifi -passord
  • ip, gateway, subnet: du trenger sannsynligvis ikke å berøre disse innstillingene; endre ip hvis du vil at ESP8266 skal ha en annen adresse
  • mUdpPort: porten som vi vil åpne i ruteren senere; hvis du ikke vet hva det er, ikke rør det
  • kode: en unik 8-tegn kode som vil bli brukt til å autentisere appen din; du kan velge hva du vil.

Hvis du bruker et ACTIVE LOW -oppsett, ikke glem å ringe homotica.setActiveLow () som vist i eksempelkoden!

For å fullføre det: legg til homotica.addUsedPin (5) (som vist i eksemplet) for å fortelle ESP8266 hvilken GPIO den må håndtere, mellom while -løkken og homotica.set (mUdpPort, kode); slett alle homotica.simulateUdp (…) -linjene.

Dette er koden du bør sitte igjen med:

#inkludere

#include #include const char* ssid = "mywifiname"; const char* password = "wifipassword"; IPAddress ip (192, 168, 1, 20); IPAddress -gateway (192, 168, 1, 1); IPAddress -delnett (255, 255, 255, 0); usignert int mUdpPort = 5858; statisk strengkode = "aBc159"; Homotica homotica; ugyldig oppsett () {WiFi.config (ip, gateway, delnett); WiFi.begin (ssid, passord); mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); } homotica.addUsedPin (5); homotica.setActiveLow (); // <- bare hvis du trenger det homotica.set (mUdpPort, kode); } void loop () {homotica.refresh (); }

Når alt er riktig konfigurert, endrer du kompilatorinnstillingene fra Verktøy -menyen i henhold til skjermbildet som er vedlagt, og velger porten ESP8266 er koblet til datamaskinen din i Verktøy> Port.

Klikk nå på opplasting. Mikrokontrolleren din er klar og klar til bruk!

Trinn 3: Ruter og IP

Ruter og IP
Ruter og IP
Ruter og IP
Ruter og IP

For å kommunisere til ESP8266 fra alle nettverk, må vi be ruteren om å slippe inn kommandoen vi sender til den.

For å gjøre det, naviger til ruterens konfigurasjonsside (vanligvis 192.168.1.1) og se etter noe som "virtuell server" eller "portvideresending"; du kan finne den nøyaktige innstillingen for rutermodellen din i Google.

I portvideresending må du opprette en ny regel som tillater alle tilkoblinger til ESP8266 (den som ble konfigurert tidligere) gjennom ESP8266 -porten (igjen den som ble konfigurert tidligere). Gi det navnet Homotica, sett inn ESP8266 IP i IP -feltet og lagre.

Hvis ruteren du bruker ikke lar deg gjøre dette, ikke bekymre deg: du vil ikke kunne bruke appen fra mobilnettverket, men den vil fungere helt fint inne i wifi -en hjemme.

Nå, for å referere til ruteren vår fra omverdenen må vi kjenne dens offentlige IP; ulempen er at flertallet av internettleverandører ikke gir deg en statisk IP, men en dynamisk i stedet, som endres over tid.

Men vent, vi kan løse dette!

Gå til NoIp, opprett en ny konto, og opprett deretter et nytt vertsnavn (se vedlagt bilde). Legg merke til hvilket vertsnavn du har (i mitt eksempel: https://yourhostname.ddns.net), og fortsett til neste trinn.

(Merk: du vil kanskje at datamaskinen din automatisk skal synkronisere ruterens IP med NoIp -vertsnavnet: last ned gratisappen for å gjøre det)

Trinn 4: Appkonfigurasjon

Appkonfigurasjon
Appkonfigurasjon
Appkonfigurasjon
Appkonfigurasjon
Appkonfigurasjon
Appkonfigurasjon

La oss ta vare på appen, skal vi?

Last ned appen fra Play Store -siden, og åpne den.

Åpne venstre meny, velg Tavler, og opprett en ny. Vi vil fylle ut parametrene vi tidligere definerte i ESP8266 -skissekoden:

  • Arduino -navn: hva du vil (la dette være ESP8266)
  • Vert -IP: dette kan være

    • ruterens statiske IP referert til via NoIp -lenken
    • ESP8266 IP hvis du bare vil bruke den fra ditt interne wifi -nettverk 192.168.1.20
  • Vertsport: den vi satte opp og åpnet tidligere 5858
  • Auth-kode: 8-tegns-koden vi definerte i skissen aBc195

Lagre. Åpne menyen igjen, lag en ny enhet; vi vil feste en lyspære for demonstrasjon:

  • Navn: lys
  • Knappnavn: vi bruker On, velg det du foretrekker
  • Pinnummer: pinnen som vi festet lyspæren til. Vær forsiktig! På ESP8266 samsvarer IKKE pinnetikettene (D1, D2…) med GPIO -pinnenavnet! Søk i Google for å finne ut hvilken pin som er hvilken GPIO (i vårt eksempel: pin 5 er merket D1)
  • Atferd: du kan velge mellom å slå på, av, endre tilstanden for å "skyve" (slå på og deretter av) enheten.

Lagre. Hvis du har konfigurert alt til nå, bør du trykke på På lyspæren.

Kult, ikke sant?

Nå kan du ha det gøy med å legge til flere enheter, enda flere tavler og ordne dem i scener.

Men for å bruke det du har opprettet med full kraft, må vi bruke Tasker.

Trinn 5: Tasker -integrasjon

Tasker Integrasjon
Tasker Integrasjon
Tasker Integrasjon
Tasker Integrasjon
Tasker Integrasjon
Tasker Integrasjon

Hvis du eier Tasker, eller vil kjøpe den, fortsett å lese! Vi vil bruke den til å fortelle Homotica hva de skal gjøre og når de skal gjøre det.

I dette eksemplet skal vi slå på lyset hver gang vi kobler til vårt wifi hjemme og tiden er mellom 16.00 og 18.00.

Åpen Tasker; opprett en ny oppgave (lar den navngi Slå på lys), velg Legg til> Plugin> Homotica, trykk på blyant inkon for å konfigurere plugin. Velg Lys> På og Lagre. Tilbake til hovedmenyen, opprett en ny profil, velg Stat> WiFi tilkoblet, sett inn Wifi -navn i feltet SSID; trykk tilbake og velg Slå på lys når du går inn i aktivitet. Nå, trykk lenge på venstre del av den nyopprettede profilen, velg Legg til> Tid> Fra 16.00 til 18.00, og lukk deretter.

Vi er ferdige. Lyset vårt tennes når vi kommer hjem på den tiden vi angir.

Det er praktisk!

Nå er det din tur: bli kreativ med Homotica og Tasker, og ikke glem å vise oss hva du har laget!

Anbefalt: