Sisukord:

Hääljuhtimisega lüliti Alexa ja Arduino abil: 10 sammu (piltidega)
Hääljuhtimisega lüliti Alexa ja Arduino abil: 10 sammu (piltidega)

Video: Hääljuhtimisega lüliti Alexa ja Arduino abil: 10 sammu (piltidega)

Video: Hääljuhtimisega lüliti Alexa ja Arduino abil: 10 sammu (piltidega)
Video: 30 лучших советов и рекомендаций по Windows 10 на 2020 год 2024, Juuli
Anonim
Hääljuhtimisega lüliti Alexa ja Arduino abil
Hääljuhtimisega lüliti Alexa ja Arduino abil

Selle projekti peamine eesmärk on kasutada temperatuuriandurit lüliti (relee) juhtimiseks seadme sisse- või väljalülitamiseks.

Materjalide loetelu

  1. 12 V releemoodul ==> 4,2 dollarit
  2. Arduino uno ==> 8 dollarit
  3. DHT11 temperatuuriandur ==> 3 dollarit
  4. ESP8266 moodul ==> 4,74 dollarit
  5. N26 optron = => 0,60 dollarit
  6. LM1117 pingeregulaator ==> 0,60 dollarit
  7. Leivalaud ==> 2,2 dollarit
  8. Jumper juhtmed ==> $ 2,5
  9. Vajutage nuppu ==> 2,5 dollarit

Projekti kogumaksumus on umbes 30 dollarit. See projekt on jagatud kolmeks osaks. Esiteks kasutame rakenduse loomiseks heroku. Teiseks loome oma töö elluviimiseks Amazon Alexa oskuse (kõige olulisem osa). Kolmandaks seadistame oma riistvara ja programmeerime selle Arduino IDE abil.

Samm: Heroku linkimine GitHubiga

Heroku linkimine GitHubiga
Heroku linkimine GitHubiga
Heroku linkimine GitHubiga
Heroku linkimine GitHubiga
Heroku linkimine GitHubiga
Heroku linkimine GitHubiga

Heroku on mitut programmeerimiskeelt toetav pilveplatvorm kui teenus (PaaS), mida kasutatakse veebirakenduste juurutamismudelina. Esiteks minge heroku saidile, looge uus konto või logige sinna sisse. Link on toodud allpool

Heroku veebisait

Alustame uue rakenduse loomisega. Olen rakenduse juurutamisel andnud oma rakenduse nimeks "iottempswitch", link luuakse.

Kui rakendus on loodud, minge saidile GitHub. GitHub/

Logige sinna sisse või registreeruge, kui teil pole kontot. Kui olete sisse loginud, looge uus hoidla. Andke nimi, mida soovite valida, ja vajutage seejärel loo hoidla. Järgmisel lehel klõpsake nuppu LUGEGE, sellel lehel kirjeldage, mida soovite teistega jagada. Pärast seda klõpsake käsul Uus fail. Järgmisena klõpsake üleslaadimise nuppu.

On kaks võimalust, kas lohistada kaust või valida fail. Laadige alla vajalikud failid. Pärast failide valimist vajutage muudatuste tegemiseks. Avage Herokus loodud rakendus ja minge seejärel jaotise juurutamiseks. Pärast seda klõpsake GitHub. Andke hoidla nimi, mille lõite GitHubi küljel. Minu puhul on see Smart-Relay. Kopeerige see ja kleepige see siia. Kui teie link on kuvatud, klõpsake nuppu Ühenda. Seejärel klõpsake haru juurutamiseks (manuaal). Pärast juurutamist näete linki ehitamislogis või linki seadetes. Vajame seda linki hiljem, kui teeme Amazoni oskusi.

2. samm: Amazon

Amazon
Amazon
Amazon
Amazon
Amazon
Amazon

Viimased pildid Alexa oskustest

Amazoni arendaja saidil kasutame Amazoni oskusi, et juhtida lüliti päästikut, määrates temperatuuri ja niiskuse.

Minge Amazoni arendaja saidile. Link on toodud allpool.

Amazoni arendaja veebisait

  • Minge paremas ülanurgas asuvasse arendajakonsooli, nagu on näidatud joonisel i4
  • Minge Alexasse, seejärel valige Alexa Skill Kit ja seejärel looge uus oskus, klõpsates nuppu Lisa uus oskus.

Uute oskuste lisamisel näete oskusteabe lehte.

1. Oskusteave (nagu näidatud pildil i7)

peame esitama oskuste tüübi, keele, nime, kutsumise nime.

Oskuse tüüp ==> vali kohandatud

  • Nimi ==> valige suvaline nimi.
  • Invocation name ==> mida kasutate Alexaga suhtlemisel. Näiteks;- Alexa, paluge anduril lüliti päästik sisse lülitada või Alexa, küsige siin valgust, kutsumise nimed on andur ja valgus.
  • Keel ==> inglise keel (India). Valige oma riigi järgi

klõpsake nuppu Salvesta ja seejärel edasi

2. Interaktsioonimudel

Siin kasutame oskuste arendajat. Niisiis, klõpsake nuppu Launch Skill Builder. näete lehte, nagu on näidatud pildil i8.

Esiteks loome uusi kavatsusi. Klõpsake nuppu Lisa (vasakul küljel) ja andke soovitud nimi "smartswitch"

  • Andke pesa tüübile nimi "mõõtmistüüp" ning pesa väärtused "temperatuur" ja "niiskus", nagu on näidatud pildil i9.
  • Seejärel lisage pesa tüübi nimi "päring" ja pesa väärtused on "mis" ja "on", nagu on näidatud pildil i10.
  • Seejärel lisage pesa tüüp "switchstate" ja pesa väärtused on "on" ja "off", nagu on näidatud pildil i11.
  • Lisage veel üks pesa tüüp "tempscale" ja pesa väärtused on "fahrenheit" ja "celcuis", nagu on näidatud pildil i12.
  • Pärast seda lisage siia uus pesa tüüp, me kasutame olemasolevat pesa tüüpi, mille jaoks peame klõpsama nuppu Kasuta olemasolevat pesa. Olemasolevas pesas otsige aadressi amazon.number ja valige see ning lisage see. Pärast selle lisamist näete seda pesatüüpides, nagu on näidatud pildil i13.

Nii et oleme lõpetanud pesa tüüpide kogu pesa tüübi, mida me kasutame, on 5. Nüüd liikuge järgmise sammu juurde. Klõpsake meie loodud kavatsusel, minu puhul on see nutikas lüliti. Paremal küljel näete kavatsusega pilu, nagu on näidatud pildil i14.

  • Looge uus pesa, andke sellele nimi "Switch_State" ja kaardistage see "switchstate", kasutades rippmenüüd, nagu on näidatud pildil i15.
  • Looge uus pesa, andke sellele nimi "Sensor_Values" ja kaardistage see "mõõtmistüübiks", nagu on näidatud pildil i16.
  • Looge uus pesa, andke sellele nimi "query" ja kaardistage see päringuks, nagu on näidatud pildil i17.
  • Pärast seda looge uus pesa "tmp_scale" ja kaardistage see "temppskaalaks", nagu on näidatud pildil i18.
  • Looge uus pesa "Numbers" ja kaardistage see "Amazon. Numbers", nagu on näidatud pildil i19.

Nüüd oleme Intent pesadega valmis. Me kasutame 5 kavatsusega pesa. Pärast seda liigume näidisväljenditele, nagu on näidatud pildil i20.

Lisage need näidislaused.

määrake lüliti päästikuks {Numbers} protsenti {tmp_scale}

{query} on lüliti olek

{Switch_State} lüliti päästik

seadke lüliti päästik {Numbers} kraadile {tmp_scale}

pööra lülitit {Switch_State}

{query} lüliti {Switch_State}

{query} on praegune {Sensor_Values}

Pärast seda salvestage mudel ja ehitage see. Oodake, kuni mudel ehitatakse pärast seda, klõpsake konfiguratsiooni. Pärast ehitamist näete sõnumit, nagu on näidatud piltidel i21 ja i22.

3. Konfiguratsioon

Valige HTTPS ja lisage link, mis loodi heroku rakenduse loomisel. Minu puhul on see https://iottempswitch.herokuapp.com/. Pärast lingi lisamist klõpsake järgmisel, nagu on näidatud pildil i23.

4. SSL -sertifikaatValige teine valik ja klõpsake järgmisel, nagu on näidatud pildil i24.

oleme oma oskused edukalt loonud.

Samm: Arduino

Arduino
Arduino
Arduino
Arduino
Arduino
Arduino

Avage Arduino IDE. Seejärel minge Fail ==> Eelistus

Täiendavate tahvlite halduris kopeerige ja kleepige URL ja klõpsake nuppu OK, nagu on näidatud pildil i26.

arduino.esp8266.com/versions/2.4.0/package_…

  • Avage juhatusehaldur, minnes menüüsse Tööriistad ==> Juhatus ==> Juhatuse haldur.
  • Avage Boards Manager ja otsige nodemcu, nagu on näidatud pildil i27.
  • Pärast seda laadige alla ESP8266WiFi raamatukogu. Avage teegihaldur: Sketch ==> Kaasa raamatukogu ==> Halda raamatukogusid.
  • Otsige üles ESP8266WiFi raamatukogu ja installige see.
  • Valige tahvel ==> Üldine ESP8266 moodul.
  • Enne koodi üleslaadimist vajame kolme raamatukogu.

Nõutavad raamatukogud

Teisaldage need teegid Arduino raamatukogude kausta

Peate koodi SSID, PWD ja heroku rakenduse lingi muutma kolme asja. Pärast seda laadige kood üles. ESP -mooduli puhul peate koodi üleslaadimise ajal vajutama välgunuppu, seejärel vajutama üks kord lähtestusnuppu ja seejärel vabastama välgunupu. Pärast koodi üleslaadimist avage terminal. näete väljundit.

4. samm: komponendi kirjeldus

Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus
Komponendi kirjeldus

1. Mis on relee

Relee on elektromagnetiline seade, mida kasutatakse kahe vooluahela elektriliseks eraldamiseks ja magnetiliseks ühendamiseks. Need on väga kasulikud seadmed ja võimaldavad ühel ahelal vahetada teist, kui nad on täiesti eraldiseisvad. Neid kasutatakse sageli elektroonilise vooluahela (mis töötab madalal pingel) ühendamiseks elektriskeemiga, mis töötab väga kõrgel pingel. Näiteks võib relee teha 5 V alalisvoolu aku vooluahela, et lülitada 230 V vahelduvvooluahelat.

Kuidas see töötab

Relee lüliti võib jagada kaheks osaks: sisend ja väljund. Sisendosas on mähis, mis tekitab magnetvälja, kui sellele rakendatakse väike pinge elektroonilisest vooluahelast. Seda pinget nimetatakse tööpingeks. Tavaliselt kasutatavad releed on saadaval erineva tööpinge konfiguratsiooniga, näiteks 6V, 9V, 12V, 24V jne. Väljundosa koosneb kontaktoritest, mis ühendavad või lahutavad mehaaniliselt. Põhirelees on kolm kontaktorit: tavaliselt avatud (NO), tavaliselt suletud (NC) ja tavaline (COM). Kui sisend ei ole, on COM ühendatud NC -ga. Tööpinge rakendamisel saab relee mähis pinge alla ja COM muudab kontakti NO. Saadaval on erinevad releekonfiguratsioonid, nagu SPST, SPDT, DPDT jne, millel on erinev arv vahetuskontakte. Kontaktorite sobiva kombinatsiooni abil saab elektriahela sisse ja välja lülitada. Vaadake relee lüliti struktuuri sisemisi üksikasju.

COM -terminal on ühine terminal. Kui COIL -klemmid on pingestatud nimipingega, on COM- ja NO -klemmidel järjepidevus. Kui COIL -klemmid pole pingestatud, ei ole COM- ja NO -klemmidel järjepidevust.

NC -terminal on tavaliselt suletud terminal. See on terminal, mida saab sisse lülitada isegi siis, kui relee ei saa tööks piisavalt pinget või piisavalt.

NO terminal on tavaliselt avatud terminal. See on terminal, kuhu asetate soovitud väljundi, kui relee saab oma nimipinge. Kui COIL -klemmidel pole pinget või pinge on ebapiisav, on väljund avatud ja pinget ei saa. Kui COIL -klemmid saavad nimipinge või veidi alla selle, saab NO -klemm piisavalt pinget ja saab seadme väljundisse sisse lülitada.

2. DHT temperatuuriandur

DHT11 on niiskuse ja temperatuuri andur, mis genereerib kalibreeritud digitaalse väljundi. DHT11 saab liidestada mis tahes mikrokontrolleriga, nagu Arduino, Raspberry Pi jne, ja saada koheseid tulemusi. DHT11 on madala hinnaga niiskus- ja temperatuuriandur, mis tagab kõrge töökindluse ja pikaajalise stabiilsuse.

3. ESP8266 täielik kirjeldus

WiFi -moodul ESP8266 on iseseisev SOC, millel on integreeritud TCP/IP -protokollipakk, mis võimaldab igale mikrokontrollerile juurdepääsu teie WiFi -võrgule. ESP8266 on võimeline majutama mõne teise rakenduse võrgufunktsioone. Iga ESP8266 moodul on eelprogrammeeritud AT-käsuga.

ESP8266 toetab APSD-d VoIP-rakenduste ja Bluetoothi kooseksisteerimisliideste jaoks, see sisaldab isekalibreeritud raadiosagedust, mis võimaldab tal töötada kõikides töötingimustes ja ei vaja väliseid raadiosideosasid.

Funktsioonid

  • 802,11 b/g/n
  • Wi-Fi Direct (P2P),
  • pehme API integreeritud TCP/IP protokollipinu
  • Integreeritud TR lüliti, balun, LNA, võimendi ja sobiv võrk
  • Integreeritud PLL -id, regulaatorid, DCXO ja toitehaldusüksused
  • +19,5 dBm väljundvõimsus 802.11b režiimis
  • Lekkevool välja lülitada <10uA
  • 1 MB välkmälu
  • Rakenduste protsessorina saab kasutada integreeritud väikese võimsusega 32-bitist protsessorit
  • SDIO 1.1 / 2.0, SPI, UART
  • STBC, 1 × 1 MIMO, 2 × 1 MIMOA-MPDU & A-MSDU liitmine ja 0,4 ms valveintervall
  • Ärka üles ja edasta paketid <2ms
  • Ooterežiimi energiatarve <1,0 mW (DTIM3)

Tihvtide kirjeldus, nagu on näidatud pildil i34.

ESP -mooduli ühendamiseks Arduino UNO -ga vajame Lm1117 3.3 pingeregulaatorit või mõnda muud regulaatorit, kuna Arduino ei ole võimeline pakkuma ESP8266 -le 3,3 v.

Märkus:- Koodi üleslaadimise ajal vajutage välgunuppu ja seejärel üks kord lähtestusnuppu ning vabastage seejärel välgunupp, nagu on näidatud pildil i29.

DHT11 anduri ja relee ühendamiseks kasutame kahte ESP8266 mooduli GPIO tihvti. Pärast koodi üleslaadimist saate RX, TX, GPIO0 kontaktid lahti ühendada. Olen DHT11 anduri jaoks kasutanud GPIO0 ja releede jaoks GPIO2. DHT11 andur töötab koos ESP8266 -ga hästi, kuid releede jaoks vajame ühte lisatööd, st opto -isolaatorit või optilist sidurit. Vaata pilti i30, i31, i32 ja i33.

Samm: ühendused

ESP8266 ===> DHT11GPIO0 ===> Väljundnõel

ESP8266 ===> RelayGPIO2 ===> Sisend

ARDUINO ===> ESP8266

Gnd ===> GndTX ===> TX

RX ===> RX

Lähtestamisnupp ===> RST

Välgunupp ===> GPIO0

6. samm: kontrollige kõiki asju

Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine
Kõikide asjade kontrollimine

Oleme edukalt loonud oma rakenduse, oskused ja riistvara on valmis. Niisiis, on aeg kontrollida.

Selleks on teie ESP8266 sisse lülitatud, kuna meie server töötab ESP8266 -ga. Siin pole ma ühtegi andurit ESP8266 -ga ühendanud. Ma lihtsalt kontrollin, kas see töötab või mitte, kuid saate anduri, relee ühendada ESP8266 -ga. Kui see on Herokuga ühendatud, näete seda ühendatud. Testimiseks minge oma loodud Amazoni oskustele ja klõpsake seejärel testlehel. Kui see on kontrollitud, ühendan ma oma anduri ESP8266 -ga. Näete tulemusi, nagu on näidatud piltidel i35, i36, 37, 38, 39, 40.

Kui kasutate seda ilma ESP8266 ühendamata, kuvatakse see tõrge, nagu on näidatud pildil i41.

Utterance saate kasutada

määrake lüliti päästikuks {Numbers} protsenti {tmp_scale}

nt:- lülitage lüliti päästik 50-protsendilisele niiskusele

{query} on lüliti olek

ex-on/off on lüliti olek

{Switch_State} lüliti päästik

ex -on/off lüliti päästik

seadke lüliti päästik {Numbers} kraadile {tmp_scale}

ex - seadke lüliti päästik 76 kraadi fahrenheiti järgi

ex - seadke lüliti päästik 24 kraadi Celsiuse järgi

pöördlüliti {Switch_State}

ex - lüliti sisse/välja lülitamine

Vaadake tulemusi piltidelt i41 kuni i46.

AlexaAlexaga rääkides paluge arduinol lüliti päästik sisse/välja lülitada

Alexa, palu arduino seadistada lüliti päästik 24 kraadi Celsiuse järgi.

Alexa, palu arduinol seadistada lüliti päästik 50 protsendi niiskusele

Alexa, palu arduinol lüliti sisse/välja lülitada

Samm 7: VUI (Voice User Interface) diagramm

VUI (Voice User Interface) diagramm
VUI (Voice User Interface) diagramm

8. samm: demo

Image
Image

1. Määrake temperatuuri ja niiskuse päästik.

2. Seadke päästik 20 kraadi Celsiuse järgi.

3. Seadke päästik 80 -protsendilisele niiskusele.

9. samm: skemaatiline

Soovitan: