Përmbajtje:

Ndërruesi IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported): 11 hapa
Ndërruesi IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported): 11 hapa

Video: Ndërruesi IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported): 11 hapa

Video: Ndërruesi IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported): 11 hapa
Video: Как использовать 4-канальное реле для управления нагрузкой переменного тока с помощью кода Arduino 2024, Qershor
Anonim
Ndërprerës IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported)
Ndërprerës IOT Relay i kontrolluar me zë i bazuar në Arduino (Google Home & Alexa Supported)

Ky projekt përshkruan se si të bëhet një ndërprerës IOT i bazuar në Arduino, i kontrolluar nga zëri. Kjo është një stafetë që mund ta aktivizoni dhe çaktivizoni në distancë duke përdorur një aplikacion për iOS dhe Android, si dhe ta lidhni atë me IFTTT dhe ta kontrolloni atë me zërin tuaj duke përdorur Google Home dhe/ose Alexa gjithashtu. Ne do të mbulojmë të gjithë hapat e nevojshëm për krijimin e pajisjes, lidhjen e aplikacionit dhe lidhjen në shërbimet e ndryshme IOT gjithashtu.

Furnizimet

  • Wemos D1 Mini Lite ESP8285 (disa dollarë në Amazon)
  • Modul stafetë 5V për Arduino/Raspberry Pi
  • 2N2222 transistor NPN
  • Rezistencë 47K ohm
  • Rezistencë 1K ohm

Hapi 1: Ndërtoni qarkun

Ndërtoni qarkun
Ndërtoni qarkun
Ndërtoni qarkun
Ndërtoni qarkun
Ndërtoni qarkun
Ndërtoni qarkun

Hapi i parë është lidhja e qarkut. Unë kam përfshirë një diagram skematik dhe tradicional të lidhjeve, në varësi të asaj me të cilën jeni mësuar. Bëra qarkun tim të parë në një prototyping breadboard dhe pastaj e transferova atë në një PCB për një konfigurim më të përhershëm dhe e vendosa në një kuti projekti të printuar 3D.

Stafeta është një stafetë opto-e izoluar H/L 5V, që do të thotë se së pari, qarku i këmbëzës është i izoluar optikisht nga vetë aktivizimi i stafetës, i cili heq çdo çështje të mundshme me reagimet nga stafeta përsëri në mikrokontrolluesin Wemos. Një siguri e mirë për ta pasur. Së dyti, është i lartë/i ulët i ndërrueshëm, që do të thotë se mund të konfigurohet, duke lëvizur bluzën e verdhë që shihni në fotografi, duke shkaktuar kur sinjali është i lartë (+5V), ose duke shkaktuar kur sinjali është i ulët (0V) Me Vetë Wemos dërgon 3.3V nga kunjat e tij dixhitalë dhe ne po përdorim D1 si burimin tonë të shkasit, që do të thotë se ne duhet ta përforcojmë atë pak, në mënyrë që t'i afrohemi një sinjali dixhital +5V për të shkaktuar stafetën. Përndryshe, mund të përdorni një stafetë 3.3V dhe të eliminoni përbërësin e amplifikatorit të tranzistorit në qark dhe të shkoni direkt nga D1 në kunjin e sinjalit në stafetë. Unë nuk kisha stafetë 3.3V, kështu që ne po përdorim një stafetë më të zakonshme 5V dhe qark amp.

DC+ dhe DC- në stafetë lidhen me kunjat 5V dhe GND të Wemos, gjë që siguron tensionin e nevojshëm për të operuar stafetën. Stafeta vlerësohet nga tensione të vogla deri në tensionin e linjës, por unë e përdor këtë për të kontrolluar një aplikim të instalimeve elektrike të tensionit të ulët. Nëse e përdorni këtë për të kontrolluar tensionin e linjës, ju lutemi sigurohuni që e dini se çfarë po bëni, jeni të kualifikuar dhe merrni masat e duhura. Nëse jo, atëherë mos e përdorni këtë për të kontrolluar aplikimet e tensionit në linjë.

Pin D1 në Wemos lidhet me rezistencën 47K ohm e cila ushqehet në bazë në transistorin NPN. Emetuesi lidhet përsëri me tokën. Kolektori është i lidhur me hyrjen e sinjalit në stafetë. Rele është vendosur të aktivizohet në nivel të ulët, kështu që kur D1 po jep një sinjal, sinjali 3.3v përforcohet në përafërsisht 5V dhe stafeta është e hapur. Kur D1 zbret, sinjali në stafetë zbret i ulët dhe stafeta mbyllet dhe përfundon një qark.

Kam harruar të bëj fotografi të qarkut tim të përkohshëm në dërrasën e prototipit, por dukej saktësisht si diagrami Fritzing më sipër, nëse është i dobishëm. Kam përfshirë një numër fotografish të qarkut tim përfundimtar përfundimtar, në mënyrë që të shihni se si është lidhur, në rast se keni nevojë për disa njohuri ose keni nevojë për shikueshmëri mbi përbërësit specifikë që po përdor.

Hapi 2: Programimi i Wemos - Vështrim i përgjithshëm

Një nga gjërat që më pëlqen tek Wemos është se ato mund të programohen ashtu si një Arduino, duke përdorur të njëjtën IDE. Sidoqoftë, ka disa hapa këtu.

  1. Instaloni drejtuesit Wemos në kompjuter mund të bisedoni me Wemos
  2. Përditësoni Arduino IDE në mënyrë që tabela Wemos të jetë e disponueshme
  3. Bëni një test të shpejtë "Blink" për t'u siguruar që gjithçka po funksionon si duhet
  4. Vendosuni me Blynk (e di që është konfuze, por në fakt është ndryshe nga "testi i mbylljes së syve")
  5. Merrni një kod aplikimi nga Blynk
  6. Përditësoni kodin Wemos/Arduino me informacionin Blynk
  7. Ngarko kodin në konfigurimin tënd të Wemos.

Hapi 3: Programimi i Wemos - Instaloni drejtuesit

Programimi i Wemos - Instaloni drejtuesit
Programimi i Wemos - Instaloni drejtuesit

Shkoni këtu (kjo lidhje duket se ndryshon periodikisht, do të përpiqem ta mbaj të përditësuar):

www.wemos.cc/en/latest/ch340_driver.html

Dhe shkarkoni paketën e duhur të shoferit për OS tuaj. Pastaj nxirrni zip -in në një drejtori dhe ekzekutoni aplikacionin "SETUP" për ta instaluar.

Kur e bëra këtë për herë të parë, mora një gabim të çuditshëm në lidhje me mos instalimin e tij. Pashë shënimin e dikujt tjetër për këtë dhe zgjidhjen e tyre, e cila funksionoi për mua. Pra, nëse merrni një gabim, provoni të përdorni butonin "Çinstalo" dhe më pas përdorni përsëri "Instalo". Shpresoj që kjo të sqarojë çështjen siç bëri për mua.

Hapi 4: Programimi i Wemos - Përditësoni Arduino IDE

Programimi i Wemos - Përditësoni ID -në Arduino
Programimi i Wemos - Përditësoni ID -në Arduino
Programimi i Wemos - Përditësoni Arduino IDE
Programimi i Wemos - Përditësoni Arduino IDE
Programimi i Wemos - Përditësoni Arduino IDE
Programimi i Wemos - Përditësoni Arduino IDE

Nëse nuk e keni instaluar Arduino IDE, është koha e mirë për ta bërë këtë tani. Mund ta shkarkoni nga www.arduino.cc

Këtu është një referencë për atë që ne do të bëjmë në këtë hap.

wiki.wemos.cc/tutorials:get_started:get_st…

  1. Le të instalojmë bordin e ri në mënyrë që të shfaqet si një opsion në Arduino IDE. Hapat 2 - 4 janë nxjerrë nga udhëzuesi i instalimit në faqen e mëposhtme github.

    github.com/esp8266/Arduino

  2. Filloni Arduino IDE dhe hapni dritaren Preferences.
  3. Shkruani "https://arduino.esp8266.com/stable/package_esp8266com_index.json" në fushën e URL -ve shtesë të Menaxherit të Bordit. Mund të shtoni URL të shumta, duke i ndarë ato me presje.
  4. Hapni Bordet Menaxher nga Tools> Board> Boards Manager (në krye), kërkoni për "esp8266" dhe instaloni platformën e listuar esp8266.
  5. Në këtë pikë ju do të shihni bordet Wemos në Tools → Board: xxx Zgjidhni Wemos D1 Mini. Në rastin tim, siç mund ta shihni nga imazhi, emri specifik ishte "LOLIN (WEMOS) D1 R2 & mini"
  6. Lidhni një kabllo USB midis kompjuterit dhe Wemos
  7. Konfirmoni që "Porti" tani është aktiv në menunë Tools dhe duket i saktë.

Hapi 5: Programimi i Testit Wemos - Blink

Programimi i Testit Wemos - Blink
Programimi i Testit Wemos - Blink

Para se të shkojmë më tej, duhet të sigurohemi që mund të komunikojmë me bordin Wemos dhe gjithçka duket në rregull. Mënyra më e lehtë për ta bërë këtë është të lidhni një kabllo USB dhe të provoni të shtyni një program të thjeshtë në Wemos. Blink është shembulli më i lehtë dhe më ka kursyer shumë sherr kur punoj me borde të reja, që këtë e bëj gjithmonë i pari.

  1. Shkoni te: Skedari> Shembuj> ESP8266> Blink dhe ngarkoni skicën e ndezjes për një pajisje Wemos
  2. Përpiloni dhe ngarkoni skicën

Nëse LED blu fillon të pulsojë rreth një herë në sekondë, atëherë është mirë të vazhdoni në hapin tjetër! Nëse jo, atëherë kthehuni dhe zgjidhni problemet e mëparshme. Shikoni nëse ka ndonjë problem me drejtuesit dhe menaxherin e bordit. Kisha disa probleme me paketën e bordit për ESP8266 dhe duhej ta çinstaloja plotësisht dhe ta instaloja përsëri për shkak të diçkaje të çuditshme me versionet që po ndodhnin. Mos u dorëzoni, dhe kërkimet në internet mund të jenë shoku juaj!

Duke supozuar se gjithçka është mirë, shkoni në hapin tjetër.

Hapi 6: Programimi i Wemos - Vendosja e Blynk

Programimi i Wemos - Vendosja e Blynk
Programimi i Wemos - Vendosja e Blynk
Programimi i Wemos - Vendosja e Blynk
Programimi i Wemos - Vendosja e Blynk
Programimi i Wemos - Vendosja e Blynk
Programimi i Wemos - Vendosja e Blynk

Në këto hapa të ardhshëm, ne duhet të krijojmë një llogari me Blynk dhe të marrim një shenjë që ne ta përdorim për të kontrolluar qarkun që kemi krijuar.

  1. Shkarkoni aplikacionin dhe krijoni një llogari (është falas)
  2. Krijoni një projekt të ri
  3. Zgjidhni Wemos D1 si Pajisje Elektronike nën Zgjidhni pajisjen
  4. Jepni një emër projektit dhe mbani llojin e lidhësit si WiFi
  5. Klikoni Krijo Projekt
  6. Në këtë pikë, Auth Token do të dërgohet me email në adresën e emailit që keni përdorur kur keni krijuar llogarinë tuaj Blynk. Ruani atë për më vonë, ne do të futim vlerat në skicë në hapin tjetër.
  7. Kur të arrini në ekranin e zbrazët të kanavacës, vetëm rrëshqitni majtas dhe do të merrni menunë e widget -it. Zgjidhni "Button" për të shtuar një "buton" në projekt
  8. Zgjidhni butonin dhe më pas konfiguroni Pin duke e klikuar atë dhe duke zgjedhur "Digital" dhe "D1" si pi dhe klikoni "Ok"
  9. Në këtë pikë, gjithçka duhet të jetë gati. Për ta bërë këtë aktive, do të dëshironi të zgjidhni ikonën e trekëndëshit në të djathtën e sipërme, por nuk do të funksionojë akoma, derisa skica të ngarkohet dhe konfigurohet, që është hapi tjetër!

Hapi 7: Programimi i Wemos - Instalimi i Bibliotekës Blynk

Për të qenë në gjendje të ngarkojmë një skicë të bazuar në Blynk, duhet të instalojmë bibliotekën e tyre. Detajet mund t'i gjeni këtu.

github.com/blynkkk/blynk-library/releases

Gjithashtu, për ndonjë sfond, shikoni faqen e tyre kryesore të internetit këtu (https://blynk.io/en/getting-started)

Kjo ishte konfuze për mua në fillim, por është shumë më e lehtë sesa tingëllon. Thjesht hapni skedarin në drejtorinë tuaj Arduino. Për mua kjo ishte në / user / Documents / Arduino. Atje tashmë kishte një dosje të quajtur "biblioteka". Skedari zip përmban një direktori "bibliotekë" dhe një "mjete". Kur e hapni atë në drejtorinë Arduino, ai shton përmbajtjen e tij në biblioteka dhe krijon mjete nëse nuk ekzistonte.

Hapi 8: Programimi i Wemos - Skicës

Ne kemi përfunduar pothuajse në këtë pikë. Skica është mjaft e thjeshtë, është drejtpërdrejt nga Blynk dhe në thelb lidh shërbimin Blynk dhe tabelën. Ju mund të përdorni ndërtuesin e tyre këtu:

examples.blynk.cc/?board=WeMos%20D1&shield=ESP8266%20WiFi&example=Widgets%2FTerminal

Ose mund të përdorni këtë mostër që duhet të funksionojë për ju. Vetëm sigurohuni që të zëvendësoni vlerat për shenjën e autoritetit dhe kredencialet tuaja për rrjetin tuaj wifi.

/*************************************************************

Shkarkoni bibliotekën më të fundit të Blynk këtu: https://github.com/blynkkk/blynk-library/releases/latest Blynk është një platformë me aplikacione iOS dhe Android për të kontrolluar Arduino, Raspberry Pi dhe pëlqimet në internet. Ju lehtë mund të ndërtoni ndërfaqe grafike për të gjitha projektet tuaja thjesht duke zvarritur dhe lëshuar widget. Shkarkime, dokumente, mësime: https://www.blynk.cc Gjenerator skicash: https://examples.blynk.cc Komuniteti Blynk: https://community.blynk.cc Na ndiqni: https://www.fb. com/blynkapp Biblioteka Blynk është e licencuar nën licencën MIT Ky kod shembull është në domenin publik. *********************************************** *********** Ju mund të dërgoni/merrni ndonjë të dhënë duke përdorur objektin WidgetTerminal. Konfigurimi i projektit të aplikacionit: widget terminal i bashkangjitur në Virtual Pin V1 ************************************ *********************//*Komentoni këtë për të çaktivizuar printimet dhe për të kursyer hapësirë*/ #define BLYNK_PRINT Serial #include #include // Ju duhet të merrni Auth Shenja në Aplikacionin Blynk. // Shko te Cilësimet e Projektit (ikona e arrës). char auth = "YourAuthToken"; // Kredencialet tuaja WiFi. // Vendosni fjalëkalimin në "" për rrjetet e hapura. char ssid = "Emri juaj i rrjetit"; char pass = "Fjalëkalimi juaj"; // Bashkangjit terminalin serik virtual në terminalin Virtual Pin V1 WidgetTerminal (V1); // Ju mund të dërgoni komanda nga Terminali në pajisjen tuaj. Thjesht përdorni // të njëjtën Pin Virtual si widget -in tuaj Terminal BLYNK_WRITE (V1) {// nëse shtypni "Marco" në Terminalin Widget - do të përgjigjet: "Polo:" if (String ("Marco") == param.asStr ()) {terminal.println ("Ju thatë: 'Marco'"); terminal.println ("Unë thashë: 'Polo'"); } else {// Dërgoji përsëri terminal.print ("Ju thatë:"); terminal.write (param.getBuffer (), param.getLength ()); terminal.println (); } // Sigurohuni që gjithçka të dërgohet terminal.flush (); } void setup () {// Debug console Serial.begin (9600); Blynk.begin (auth, ssid, pass); // Ju gjithashtu mund të specifikoni serverin: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.filloj(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); // Kjo do të printojë versionin e softuerit Blynk në Widget Terminal kur // pajisja juaj lidhet me terminalin.println të serverit Blynk (F ("Blynk v" BLYNK_VERSION ": Pajisja është nisur")); terminal.println (F ("-------------")); terminal.println (F ("Lloji 'Marco' dhe merr një përgjigje, ose lloj")); terminal.println (F ("çdo gjë tjetër dhe merr atë të shtypur.")); terminal.flush (); } void loop () {Blynk.run (); }

Hapi 9: Programimi i Wemos - Hapi Final

Image
Image

Pasi të jetë ngarkuar skica, përpiloni dhe ngarkoni skicën dhe duhet të jeni gati për të testuar konfigurimin tuaj!

Hapni aplikacionin Blynk, klikoni trekëndëshin në këndin e sipërm të djathtë për Projektin tuaj Wemos

Pastaj klikoni butonin! Ju duhet të dëgjoni klikimin e stafetës dhe LED -të e statusit në tabelën e stafetë tregojnë se stafeta ka ndryshuar gjendjen.

Tani mund ta lidhni stafetën me çdo aplikim të tensionit të ulët që kërkon një ndërprerës të thjeshtë dhe ta kontrolloni atë nga aplikacioni juaj Blynk. Gjëja e fundit që duhet të bëjmë është të lidhemi me IFTTT dhe të përdorim Google ose Alexa për të kontrolluar sistemin Blynk, kështu që nuk do të na duhet ta bëjmë atë nga aplikacioni ynë Blynk.

Hapi 10: Kontrolli i Blynk Me IFTTT dhe Google Home ose Alexa

Unë po supozoj në këtë pikë që ju keni njëfarë familjariteti me IFTTT. Nëse jo, ka disa mësime të shkëlqyera atje që do t'ju ndihmojnë të mësoni se si të përdorni dhe të përdorni IFTTT. Veryshtë shumë e fuqishme dhe diçka që do të dëshironi të mësoni nëse nuk jeni njohur tashmë.

  1. Krijoni një aplet të ri në IFTTT
  2. Zgjidhni Google Assistant si "Nëse kjo" dhe përdorni një "Simple Phrase" si shkas. Për mua, meqenëse kjo do të ndizte ose fikte fireplace, fraza ime ishte "ndez fireplace"
  3. Për pjesën "Atëherë", kërkoni dhe përdorni Webhooks
  4. Zgjidhni "Bëni një kërkesë në internet"
  5. Për URL -në që dëshironi të përdorni:

    "https://blynk-cloud.com/XXXXYYYYZZZZ/update/d5?value=1"

  6. Vendoseni metodën në GET, llojin e përmbajtjes në urlencoded, dhe ju mund ta lini trupin të zbrazët dhe më pas ta ruani

Prisni disa minuta dhe pastaj vazhdoni dhe provoni frazën tuaj me pajisjen tuaj të Google në shtëpi. Vura re se duhen rreth dy minuta që të jetë gati.

SH NOTNIM: një gjëje tjetër që duhet kushtuar vëmendje këtu. Vini re se unë jam duke përdorur "d5" në thirrjen time API, por jam lidhur me pin D1 në tabelë. M’u desh rreth një ditë për të kuptuar se numërimi i kunjave GPIO dhe numërimi i ekranit të shtypur në tabelë nuk janë të njëjta. Pas ndryshimit të vlerave me thirrjet e drejtpërdrejta të URL -së dhe testimit të tensioneve në kunja të ndryshëm me një voltmetër, unë kam qenë në gjendje të vërej se një thirrje në d1 përmes API -së ndryshoi tensionin, por jo në D1 në tabelë. d5/GPIO 5 në fakt korrespondonte me D1 në tabelë. Pasi bëra atë rregullim, gjithçka funksionoi bukur!

Lidhja e Alexa është identike me Google në shtëpi, thjesht përdorni shërbimin Alexa në IFTTT.

Hapi 11: Përfundim

Në këtë pikë, duhet të keni një stafetë funksionale të kontrolluar nga zëri IOT duke përdorur mini lite Wemos D1. Gëzoni dhe fat të mirë!

Përsëri, energjia elektrike është e rrezikshme, kështu që ju lutemi merrni masat e duhura dhe nëse nuk jeni të kualifikuar, ju lutemi mos.

Recommended: