Orodha ya maudhui:

Ufuatiliaji wa Smart Home Kutumia Alexa na Arduino: Hatua 9 (na Picha)
Ufuatiliaji wa Smart Home Kutumia Alexa na Arduino: Hatua 9 (na Picha)

Video: Ufuatiliaji wa Smart Home Kutumia Alexa na Arduino: Hatua 9 (na Picha)

Video: Ufuatiliaji wa Smart Home Kutumia Alexa na Arduino: Hatua 9 (na Picha)
Video: Контрольная лампа переменного тока с диммером Arduino AC 2024, Desemba
Anonim
Image
Image
Kukusanya Vifaa
Kukusanya Vifaa

Katika ulimwengu wa sasa watu hutumia wakati mwingi mahali pa kazi badala ya nyumba zao. Kwa hivyo kuna haja ya mfumo wa ufuatiliaji wa nyumba ambapo watu wanaweza kujua hali za nyumba wakiwa kazini. Ingekuwa bora zaidi ikiwa mtu anaweza tu kuuliza "mtu" juu ya nyumba yao wakati wa saa za kazi. Hii inaweza kutimizwa kwa kutumia Amazon Alexa kama msaidizi ambaye anaweza kumpa mtumiaji habari ya hitaji juu ya nyumba yao.

Sio Sehemu ya Kufanya Kazi tu watumiaji wanaweza kujua hali ya nyumba mahali popote ulimwenguni ikiwa tu wana unganisho la mtandao na Amazon Alexa.

Kazi zifuatazo zinatekelezwa katika mradi huu:

1) Dhibiti vifaa vya nyumbani kama shabiki na taa

2) Huwaambia hali ya vifaa

3) Huelezea hali ya hewa ya nyumba (joto na unyevu)

4) Inatuma picha ya ndani ya nyumba kwa mtumiaji kupitia Gmail inapohitajika.

5) Hutuma arifa ikiwa -

* Mjinga (pia hutuma picha)

* Moto

* Mgeni (pia anatuma picha)

Hatua ya 1: Kukusanya Vifaa

Kukusanya Vifaa
Kukusanya Vifaa
Kukusanya Vifaa
Kukusanya Vifaa
Kukusanya Vifaa
Kukusanya Vifaa

Vifaa vinahitajika

Arduino Uno

Moduli ya Wifi ya ESP8266

Unganisha Smart 7688 Duo

DHT11

Anarudia

Sensorer ya kikwazo cha IR

Kamera ya wavuti

Amazon Echo Dot

Bodi ya mkate na jumper waya

Programu na Huduma za mkondoni:

Mambo ya kusema.com

Arduino IDE

Kuweka Ujuzi wa Alexa Alexa

Amazon Alexa Echosim.io (kwa Ujuzi wa Upimaji)

Bila kurudi nyuma

KusukumaBox

Hatua ya 2: Kupanga Arduino na ESP8266

Kupanga Arduino na ESP8266
Kupanga Arduino na ESP8266
Kupanga Arduino na ESP8266
Kupanga Arduino na ESP8266

Pakua IDE ya Arduino Kutoka kwa wavuti rasmi:

Fungua Arduino IDE na nenda kwenye faili-> mapendeleo-> katika aina ya URL ya meneja wa bodi ya ziada -

Nenda kwa zana -> bodi -> Meneja wa Bodi na usakinishe kifurushi cha esp8266 kilichopatikana mwishowe.

Kupanga arduino ingiza kebo ya USB kutoka arduino hadi kwenye kompyuta na uchague Arduino / Genuino UNO katika zana-> bodi. Pia hakikisha unachagua haki za bandari za COM katika Zana (Nambari ya bandari ya COM inaweza kupatikana katika Kidhibiti cha Kifaa). Andika Mpango unaohitajika, Usogeze na ubonyeze pakia ikiwa hakuna makosa.

Kwa mpango wa ESP8266 fanya unganisho kama inavyoonyeshwa kwenye mchoro. unganisha usb kutoka arduino hadi Kompyuta. Katika zana-> bodi-> chagua Generic ESP8266 na pia uchague bandari ya COM ya kulia. Andika Mpango unaohitajika, Usogeze na ubonyeze pakia ikiwa hakuna makosa. Hakikisha unaunganisha Arduino RST na GND (arduino hufanya kama programu kwa ESP8266).

Katika Mradi huu Kwanza ESP8266 imesanidiwa na kisha unganisho la mzunguko huondolewa. Kisha Mzunguko umeunganishwa tena kama inavyoonyeshwa kwenye Kielelezo kilichoitwa "Miunganisho ya Mzunguko". Na kisha arduino imewekwa.

Hatua ya 3: Kusanidi Thingspeak.com

Kusanidi Thingspeak.com
Kusanidi Thingspeak.com

Unda akaunti kwenye mambo ya maneno.com.

tunatumia chaneli kwenye mambo ya kusema kuhifadhi habari ya kudhibiti kifaa na kuipeleka kwa arduino / alexa. sisi pia tunahifadhi viwango vya joto na unyevu kwenye vituo. Ni kama eneo la kuhifadhi habari.

Ingia kwenye mazungumzo, nenda kwenye vituo vyangu na uunda kituo kipya. Toa jina na ufafanuzi kwa vituo vyako. Katika mradi wetu tunahitaji njia 8 (unaweza kufanya kazi hiyo kwa kutumia njia chache lakini itakuwa ngumu wakati wa programu). Pia mambo ya kusema yana kizuizi cha wakati wakati wa kusasisha kituo. Lazima kuwe na pengo la sekunde 10-15 kati ya usasishaji mfululizo wa kituo fulani.

Njia nane zilizo na maadili na maana yake zimepewa hapa chini

jina la kituo (thamani1-maana, thamani2-maana, nk):

1) Udhibiti wa kifaa (0 -lightON, 1- lightOff, 2- fan ON, 3- Fan Off)

2) hali ya taa (0- taa imewashwa, taa 1 inawashwa)

3) hali ya shabiki (shabiki 0 amezimwa, shabiki 1 amewashwa)

4) unyevu (thamani ya unyevu)

5) joto (thamani ya joto)

6) arifu ya mwingiliaji (1- tahadhari ya mwingiliaji)

7) arifa ya moto (1- tahadhari ya moto)

8) arifa ya wageni (1- tahadhari ya mgeni)

unapobofya kituo chochote unaweza kuona kitambulisho cha kituo na kuandika funguo za API kwenye kichupo cha funguo za API. id idhaa inahitajika kupata habari / thamani kwenye kituo. Na ufunguo wa kuandika unahitajika kuhifadhi thamani kwenye kituo.

Ombi la http la kusasisha kituo ni:

api.thingspeak.com/update?api_key=&field1=

inabadilishwa na funguo za kuandika zinazofanana za kituo na inaweza kuwa (0/1 ikiwa kuna udhibiti wa kifaa au maadili ya muda / unyevu)

Ombi la http la kusoma thamani kutoka kwa kituo ni:

api.thingspeak.com/channel//field/field1/last.html

inabadilishwa na id ya kituo fulani ambayo tunataka kusoma kutoka.

Hatua ya 4: Mpango

Programu imegawanywa katika sehemu 3:

A) Programu ya Arduino: mpango wa arduino ni rahisi sana. Inapokea data kutoka kwa ESP8266 mfululizo na kulingana na data iliyopokea vifaa vinadhibitiwa. Habari zaidi juu ya programu hiyo inapatikana katika maoni katika programu yenyewe.

B) Programu ya ESP8266: mpango wa ESP8266 unajumuisha vitu 3

1) kusasisha hali ya joto na unyevu kwa kutumia ombi la

mteja.print (Kamba ("GET") + "/ update? key = & field1 =" + humidity + "HTTP / 1.1 / r / n" + "Jeshi:" + mwenyeji + "\ r / n" + "Uunganisho: karibu / r / n / r / n "); // sasisha unyevu

mteja.print (Kamba ("GET") + "/ update? key = & field1 =" + joto + "HTTP / 1.1 / r / n" + "Jeshi:" + mwenyeji + "\ r / n" + "Uunganisho: karibu / r / n / r / n "); // sasisha joto

inabadilishwa na kitufe cha kuandika kinachofanana kinachopatikana kwenye kituo cha kusema kwa unyevu na joto mtawaliwa. na mwenyeji ni api.thingspeak.com.

pakua maktaba ya dht kutoka:

2) kusoma kutoka kwa njia zinazolingana za vitu vya kusema na kudhibiti kifaa kulingana na nambari zilizopatikana: mteja.print (Kamba ("GET") + "/ chaneli//field/field1/last.html HTTP / 1.1 / r / n" + " Mwenyeji: "+ mwenyeji +" / r / n "+" Uunganisho: funga / r / n / r / n ");

ambapo inabadilishwa na id ya kituo inayolingana inayopatikana kwenye thingspeak.

3) Kutuma tahadhari ikiwa kuna joto la juu kupitia sanduku la kusukuma

Kamba host1 = "api.pushingbox.com";

mteja.print (String ("GET") + "/ pushingbox? devid = HTTP / 1.1 / r / n" + "Jeshi:" + host1 + "\ r / n" + "Uunganisho: karibu / r / n / r / n ");

ambapo inabadilishwa na kitambulisho cha kifaa chako kwenye sanduku la kusukuma.

Hatua ya 5: Kusanidi Duo ya Linkit Smart 7688 na Webcam

Inasanidi Linkit Smart 7688 Duo na Webcam
Inasanidi Linkit Smart 7688 Duo na Webcam
Inasanidi Linkit Smart 7688 Duo na Webcam
Inasanidi Linkit Smart 7688 Duo na Webcam
Inasanidi Linkit Smart 7688 Duo na Webcam
Inasanidi Linkit Smart 7688 Duo na Webcam

Katika mradi huu webcam na linkit smart 7688 duo hutumiwa kukamata picha inayohitajika na kuituma kwa mtumiaji. Unaweza pia kutumia moduli ya kamera ya arduino na kuiunganisha na arduino au matumizi inaweza kutumia kamera yoyote ya IP.

Bonyeza na ushikilie kitufe cha wifi kwenye linkit smart 7688 kwa sekunde 20 kuweka upya bodi. Halafu baada ya kuweka wifi kuwekwa upya utaweza kuona jina la nukta ya ufikiaji kwenye unganisho la mtandao wa wireless. Sasa unganisha kompyuta kwenye mtandao huo. baada ya kuiunganisha fungua kivinjari na andika 192.168.100.1 kwenye upau wa anwani. Utaweza kuona lango lake. weka nywila kuingia kwenye lango lake.

Baada ya kuingia ingia kwenye kichupo cha mtandao na uchague hali ya Stesheni (tunaihitaji (linkit smart 7688 duo) kufikia mtandao) na kuiunganisha kwenye mtandao wako wa Wifi na bonyeza Bonyeza na uanze upya.

Baada ya bodi kuanza upya itapewa anwani ya IP ya ndani. Tafuta anwani kutumia zana yoyote ya IP au bandari yako ya router. Kwa upande wangu ilikuwa 192.168.1.4. Sasa andika anwani ya IP ya ndani kwenye bar ya anwani ya kivinjari. hakikisha kwamba kompyuta imeunganishwa kwenye mtandao sawa na kiunganishi cha akili. Utaulizwa uingie tena.

Ili kuwezesha kutiririka kutoka kwa kamera ya wavuti unapaswa kuwezesha kipeperushi cha -j.webp

Baada ya kuingia ingia kwenye kichupo cha huduma na uangalie kuwezesha kipeperushi cha -j.webp

Baada ya usanidi kuweza kukuunganisha kamera ya wavuti kwa mwenyeji wa kiunganishi cha smart 7688 duo usb kupitia kebo ya OTG. Sasa kuona Mkondo unafungua kivinjari na andika: kwenye upau wa anwani. kwa upande wangu ni 192.168.1.4:4400

kuchukua aina ya risasi kwa amri:? action = snapshot

Sasa picha hii inapatikana ndani lakini tunahitaji kuifanya ipatikane kwa kusukuma huduma ya sanduku. Ili kufanikisha hili tunahitaji kufanya usambazaji wa bandari. Usambazaji wa bandari unaweza kufanywa katika bandari ya router. Utaratibu wa id tofauti kwa ruta tofauti. Google tu kujua jinsi ya kusambaza mbele kwa router maalum. Kawaida inapatikana chini ya huduma ya NAT. Baada ya matumizi ya mbele ya bandari inaweza kufikia bandari hii (yaani.. 4440) kutoka kwa IP yako ya nje. IP ya nje inaweza kupatikana kwa kufunga "whats my ip" katika google.

Unahitaji kuweka anwani hii

yaani.. https://::? action = snapshot

kwenye kisanduku cha kusukuma (ambacho kimeelezewa katika hatua inayofuata) ili kisukuma kisanduku kiweze kupata picha hii na kuiambatisha kwa barua na kukutumia kila inapohitajika.

Unaweza pia kuhifadhi picha kwenye kadi ya sd kwani Linkit smart 7688 duo pia inakuja na nafasi ya kadi ya sd kwa kuhifadhi habari. Habari zaidi juu ya hii inaweza kupatikana kwa:

docs.labs.mediatek.com/resource/linkit-sm …….

Hatua ya 6: Kusanidi PushingBox

Inasanidi PushingBox
Inasanidi PushingBox

sanduku la kusukuma linatumiwa kutuma arifa juu ya arifa tofauti kwenye mradi kwa gmail.

ingia kwenye sanduku la kusukuma ukitumia akaunti ya google:

nenda kwenye huduma zangu ongeza huduma. kuna huduma nyingi za kuchagua kama vile Gmail, twitter, taarifa ya kushinikiza kwa admin nk.

chagua Gmail (kama tunavyohitaji kutuma picha kama kiambatisho) na ujaze usanidi wa jina la gmail na kitambulisho cha gmail cha mtumiaji ambaye tahadhari inapaswa kutumwa.

nenda kwa matukio yangu na unda hali mpya. toa jina kwa hali hiyo (mfano: ALERT) ongeza huduma iliyoundwa hapo awali.

andika mada inayofaa na mwili wa barua na ingiza url kuchukua picha ya wavuti kwa kuweka picha. Unda matukio tofauti kwa arifu tofauti.api ya kutekeleza hali ya sanduku la kusukuma ni:

Hatua ya 7: Kuunda Ujuzi wa Alexa Kutumia nyuma

Kuunda Ujuzi wa Alexa Kutumia nyuma
Kuunda Ujuzi wa Alexa Kutumia nyuma
Kuunda Ujuzi wa Alexa Kutumia nyuma
Kuunda Ujuzi wa Alexa Kutumia nyuma
Kuunda Ujuzi wa Alexa Kutumia nyuma
Kuunda Ujuzi wa Alexa Kutumia nyuma

backendless hutumiwa kuunda ustadi wa alexa. Ni programu rahisi ya kuvuta na kuacha kutumika kuunda ustadi wa alexa (au programu zozote) ambazo zinaweza kupatikana kwa API isiyo na nyuma.

fungua akaunti bila kurudi nyuma:

  • Ingia kwenye akaunti yako katika akaunti isiyo na nyuma. bonyeza Unda programu na upe jina kwa programu yako
  • Bonyeza ikoni ya Mfumo wa Biashara ulio kwenye mwambaa wa ikoni upande wa kushoto. Utaona skrini ya HUDUMA za API.
  • Bonyeza ikoni ya "+" ili kuunda huduma mpya. Hakikisha kuchagua KUTOKUJIFUNGUA katika kidukizo cha "Huduma Mpya". Ingiza "AlexaService" kwa jina la huduma. Bonyeza kitufe cha SAVE:
  • Kutokuwa na nyuma kunaunda Huduma ya API na itakuchochea kuunda njia ya huduma. Hii itakuwa njia ambayo itashughulikia maombi kutoka kwa Alexa. Ingiza "handleRequest" kwa jina la njia. Hakikisha kuchagua POST kwa operesheni ya REST, na tangaza hoja na jina la "req" na andika "Kitu chochote" kama inavyoonyeshwa:
  • Kutokuwa na nyuma kunaunda kishika nafasi kwa mantiki isiyo na nambari ya njia hiyo. Bonyeza kitufe cha BADILISHA ili kuanza kubadili Mbuni wa Mantiki asiye na Nambari. Katika kizuizi cha kizuizi cha kazi kilichoundwa, bonyeza eneo linalosema "doSomething" na ubadilishe kuwa "sendAlexaResponse". Kazi hii hutumiwa kufanya alexa aseme kitu ambacho kinaweza kupitishwa kama hoja. Bonyeza kitufe cha SAVE ili kazi ihifadhi.
  • Bonyeza ikoni ya gia iliyoko kwenye kizuizi cha zambarau karibu na neno "Kazi". Ongeza hoja mbili kwa kuburuta vizuizi vya kuingiza kama inavyoonyeshwa kwenye picha hapa chini. Wape majina ya hoja kama "whatToSay" na "waitForResponse". Ona kwamba unapoongeza hoja, eneo la Vitalu vya Muktadha hujazwa moja kwa moja na vizuizi vinavyowakilisha maadili ya hoja.
  • Rekebisha mantiki ya kazi ili ionekane kama kwenye picha. Kwa vizuizi vya "Unda Vitu", tumia ikoni ya gia kubadilisha jina la mali ya kitu. Usisahau kuokoa kazi yako kwa kubofya kitufe cha SAVE.
  • Sasa kwa kuwa kazi ya kawaida imejengwa, rudi kwa njia ya kushughulikiaRequest ya huduma ya AlexaService. Bonyeza kitengo cha Kazi za Desturi kwenye upau wa zana upande wa kushoto na uburute kizuizi cha sendAlexaResponse kuungana na kiunganishi cha kurudisha njia yako ya huduma.
  • Hatua zilizo hapo juu pia zinaweza kupatikana katika wavuti yao:
  • Bonyeza nodi ya "Ongeza Mpya" chini ya Kazi katika sehemu ya BROWSER. Katika kizuizi cha kizuizi cha kazi kilichoundwa, bonyeza eneo linalosema "doSomething" na ubadilishe kuwa "getIntentName" rekebisha vizuizi ili kazi ionekane kama picha iliyoonyeshwa. itapata jina la dhamira kulingana na matamshi ya mfano. Rudi kwa huduma za api-> shughulikia ombi katika sehemu ya kivinjari. Mabadiliko na mantiki ni kuunda kutoka sehemu ya mfumo. Unda vifuatavyo vifuatavyo vilivyoonyeshwa kwenye picha.
  • ijayo tunahifadhi jina la kusudi kuomba tofauti. Na kisha linganisha na malengo. kwa mfano ikiwa ombi ni "utangulizi" basi jibu tofauti imewekwa kuwa "hi! Ninaweza kudhibiti ……." na majibu haya yanasomwa kwa sauti na alexa mwishowe. rekebisha kizuizi kama inavyoonyeshwa.
  • ikiwa ombi ni LightsOn dhamira basi tunasasisha kituo cha kusema kuwa '0' kwa kutumia ombi la http na wakati huo huo tunasasisha hali ya kifaa (1/0 kulingana na On / Off). Jambo lile lile linarudiwa kwa LightsOff, FanOn na FanOff.
  • Kwa hali ya hewa tunasoma kutoka kwa Joto na chaneli ya unyevu na kuhifadhi matokeo katika kutofautisha kwa majibu. Kama kituo kinatoa tu maadili tunaongeza maandishi ili kufanya majibu kuwa ya maana
  • kwa picha ya sebule tunatumia hali ya kusukuma sanduku
  • kwa hali ya kifaa tunasoma habari kutoka kwa kituo cha hali ya mambo ya kusema:
  • kwa arifa na arifa tunazosoma kutoka kwa njia za tahadhari (moto, mwingiliaji na mgeni):
  • kulingana na maadili ambayo tunapata kutoka kwa uwanja wa arifa ujumbe unaofanana wa tahadhari huhifadhiwa katika anuwai ya majibu0. ikiwa hakuna arifa basi hakuna ujumbe wa arifa umehifadhiwa.
  • mara tu arifa ikisomwa basi '0' inasasishwa katika njia za arifa ili alexa asisome arifa hiyo hiyo tena. Kisha mwishowe kulingana na ombi, jibu0 / jibu linasomeka kwa sauti.

Hatua ya 8: Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon:

Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon
Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon
Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon
Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon
Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon
Kusanidi Ujuzi wa Alexa katika Dashibodi ya Wasanidi Programu wa Amazon

nenda kwenye dashibodi ya msanidi programu wa amazon na uingie kwa kutumia akaunti ya amazon.

nenda kwenye dashibodi ya msanidi programu na bonyeza kwenye kichupo cha ALEXA. Bonyeza kwenye kitanda cha ujuzi cha alexa kuanza.

unda aina ya ustadi wa kitamaduni, toa jina na jina la kuomba kwa ustadi. dhamira husika na usemi wa sampuli hutolewa kwa nambari.

katika kichupo cha usanidi chagua HTTPS kama aina ya sehemu ya mwisho ya huduma jaza URL chaguomsingi na URL ya API kutoka nyuma. Chagua chaguo la 2 katika Cheti cha mwisho wa msingi katika cheti cha SSL. Unaweza pia kujaribu ujuzi kutumia simulator ya mtihani.

Baada ya jaribio kukamilika unaweza kuchapisha ustadi na habari inayotakiwa ya kuchapisha.

Hatua ya 9: Usanidi wa Mwisho na Maliza

Usanidi wa Mwisho na Maliza!
Usanidi wa Mwisho na Maliza!
Usanidi wa Mwisho na Maliza!
Usanidi wa Mwisho na Maliza!

Fanya unganisho la mzunguko kama inavyoonyeshwa.

Wakati mwingine ESP8266 itafanya kazi vibaya kwa sababu ya sasa haitoshi. Kwa hivyo, ingawa imetajwa katika mzunguko, inashauriwa kuwezesha ESP8266 kutoka chanzo tofauti cha 3.3v. Ikiwa unatumia benki ya umeme hakikisha unapunguza voltage kutoka 5v hadi 3.3v ukitumia mdhibiti wa voltage 3.3v. Pakia programu kwa ESP8266 na arduino. Nimeonyesha unganisho kwa balbu, kitu kimoja kinaweza kupanuliwa kwa shabiki au vifaa vyovyote. Mwishowe tumia mwangwi wa amazon au echosim.io kukujaribu ustadi.

Lazima uamilishe ustadi ukitumia jina la kuomba (kama ilivyo kwa kesi yangu - "myhome"). Wakati mwingine haitafanya kazi ikiwa inatumiwa bila jina la kuomba kwani nimeonyesha mara kadhaa kwenye video yangu

Natumahi ulifurahiya mafunzo!

Asante!

Ilipendekeza: