Orodha ya maudhui:

MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01: 6 Hatua
MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01: 6 Hatua

Video: MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01: 6 Hatua

Video: MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01: 6 Hatua
Video: Счастливая история слепой кошечки по имени Нюша 2024, Novemba
Anonim
MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01
MQTT / Mlango wa Nyumba ya Google Kutumia ESP-01

Je! Umewahi kukosa kujibu mgeni aliyekupigia kengele ya mlango kwa sababu tu uko katika sehemu ya nyumba iliyo mbali sana kusikia kengele ya mlango? kama chumba cha chini, chumba cha kulala kilichofungwa, au labda ulikuwa ukiangalia TV au kusikiliza muziki.

Ikiwa kama mimi, unayo moja au zaidi ya spika za google kwenye eneo kadhaa kwenye nyumba yako, hii inaweza kufundishwa kama vile unahitaji.

Katika Agizo hili nitakuonyesha jinsi ya kuongeza mteja wa MQTT kwa chime ya mlango iliyopo ili kuwasiliana na broker wa MQTT na tangazo kwa google nyumbani / pushbullet, ukitumia NodeRED. Mradi huu haubadilishi kengele ya mlango wala chime. Bado hutumia kitufe cha kawaida cha mitambo kwa kengele ya mlango.

Tutaongeza moduli ya ESP-01 kwenye mfumo uliopo wa kengele ya 16VAC na kuongeza utendaji wa MQTT kutuma ujumbe kwa broker wa MQTT (wakati ubadilishaji wa kengele ya mlango umeshinikizwa). Dalali wa MQTT angepeleka ujumbe kwa NodeRED. Baada ya kupokea ujumbe wa MQTT, NodeRED itatuma tangazo kwa vifaa vingi vya nyumbani vya google na pia kwa hiari itatuma ujumbe kwa simu ya rununu / kivinjari kupitia pushbullet.

Nina shauku ya otomatiki ya nyumba ya DIY, na polepole nikiongeza IOT nyumbani kwangu. Nyumba ya Google imekuwa moja ya kazi kuu katika kiotomatiki cha nyumbani.

Mwanangu alinipa wazo la mradi huu wakati aliniuliza ikiwa naweza kufanya nyumba ya google itangaze kila wakati mtu anapiga kengele ya mlango wetu. Tuna hadithi 2 + kumaliza basement nyumbani, na mara nyingi hatukuweza kusikia chime tunapokuwa kwenye basement yetu au ghorofani kwenye chumba cha kulala na mlango umefungwa au na TV imewashwa.

Tuna mini-4 ya nyumba ya google katika nyumba yetu iliyowekwa katika sehemu / vyumba anuwai, na kwa kutumia nyumba za google kutangaza kengele ya mlango, tunajua mara moja popote ndani ya nyumba ikiwa mtu atapiga hodi.

Katika nyumba yangu, ninatumia RaspberryPi ZeroW kukaribisha seva ya Mosquitto MQTT na NodeRED. Imekuwa ikikimbia kwa zaidi ya mwaka bila suala lolote.

Marejeo:

  • Picha za wiring za mlango
  • Sakinisha Broker ya Mosquitto MQTT kwenye Raspberry Pi:
  • Sakinisha NodeRED kwenye Raspberry Pi:

Hatua ya 1: Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango

Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango
Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango
Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango
Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango
Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango
Unda Mzunguko wa Kiingiliano ESP-01 na Chime ya Mlango

Hatua ya kwanza itakuwa kuunda mzunguko ambao ungekuwa kiunganishi kati ya ESP-01 na Chime ya Mlango. Chime ya kawaida ya milango imeamilishwa wakati kuna 16VAC kati ya "TRANS (zamani)" na "MBELE / MBELE" kama inavyoonekana kwenye picha yangu ya kwanza. Voltage inatoa kwenye pini hizo wakati kitufe cha kengele ya mlango kinabanwa.

Mzunguko ambao nimebuni ni kuhisi ishara hii ya 16VAC na kuigeuza iwe karibu ishara ya dijiti ya 3.3VDC. Ni rectifier ya msingi ya nusu-wimbi iliyoundwa na D1 na C1. Hatuna haja ya kuwa na urekebishaji kamili wa wimbi katika hali hii kwani kuna upakiaji mdogo sana kwa pato la DC, ikituokoa mali isiyohamishika kidogo kwenye bodi. Ninataka kuifanya bodi iwe kidogo iwezekanavyo ili niweze kuiweka ndani ya chime yangu iliyopo.

R1 na R2 huunda mgawanyiko wa voltage ili kuleta kiwango cha juu cha voltage ya DC hadi karibu 3.3V.

R3, TR1, na R4 huunda inverter ili kutoa mantiki ya kurudi nyuma kwa ESP-01 GPIO-2. Hii ni muhimu kutoa mantiki HIGH wakati wa bootup (na kuvuta R4 na R5) kwa ESP-01 kuanza kutoka flash. Wakati kitufe cha mlango kinabanwa, inapeana mantiki LOW kwa GPIO-2. TR1 inaweza kuwa transistor yoyote ndogo ya NPN, kwa upande wangu nilitumia 2N3904.

V1 ni usambazaji wa umeme wa 3.3VDC ambao niliunda kwa kutumia sinia ya zamani ya rununu ya 5V pamoja na mdhibiti wa AMS1117 3.3VDC ambayo nitaonyesha katika hatua inayofuata.

Kwa tundu la ESP-01, ninatumia tundu la IC lenye pini 8, na kukata madaraja ya plastiki ambayo hutengeneza pengo kati ya safu, na kisha gundi safu 2 pamoja.

Hatua ya 2: 3.3VDC Ugavi wa Nguvu kwa ESP-01

Ugavi wa Umeme wa 3.3VDC kwa ESP-01
Ugavi wa Umeme wa 3.3VDC kwa ESP-01
Ugavi wa Umeme wa 3.3VDC kwa ESP-01
Ugavi wa Umeme wa 3.3VDC kwa ESP-01
Ugavi wa Umeme wa 3.3VDC kwa ESP-01
Ugavi wa Umeme wa 3.3VDC kwa ESP-01

Katika hatua hii, tutakuwa tukijenga umeme wa 3.3VDC kwa ESP-01. Nina chache ya zamani ya 500mA na 700mA 5VDC adapta ya sinia ya USB ambayo nimekusudia mradi huu. Tunahitaji pia mdhibiti wa 3.3VDC kushuka kwa voltage ya 5V hadi 3.3V, kwa hii ninatumia moduli ya bei rahisi iliyojengwa kabla ya AMS1117 ambayo nilinunua kutoka ebay. Unaweza kutafuta "moduli ya 3.3V AMS1117" na upate kinachokufaa.

Moduli hii ya mdhibiti wa 3.3V ni ndogo sana kwamba kwa kweli naweza kuijaza ndani ya kizuizi cha chaja cha USB cha 5V na kuifanya iwe salama kutoka kwa mzunguko mfupi. Niliondoa vifungo vya ukuta wa AC kutoka kwa moduli ya sinia na kuibadilisha na nyaya mbili ambazo zitaunganishwa na 120VAC kutoka ukuta nyuma ya chime yangu iliyopo. Lakini usiondoe vidonge kwenye hatua hii mpaka tutakapofanya mtihani kwenye hatua inayofuata.

Ikiwa kuna duka la ukuta karibu, au ikiwa huna raha na wiring usambazaji wa umeme moja kwa moja kwa wiring ya nyumba, unaweza kuchagua kuziba tu usambazaji wa umeme uliobadilishwa kwa kuziba ukuta, na uendeshe kwa chime, ingawa inaweza kuonekana kuwa safi kama kuiunganisha moja kwa moja na wiring ya nyumba.

Tazama moja ya picha yangu kuona kuwa nyuma ya chime yangu kuna wiring 120VAC na 16VAC transformer kwa chime.

Pato kutoka kwa mdhibiti wa 3.3V basi ingeunganisha kwenye bodi ya kiolesura cha ESP-01 kulingana na hatua ya awali.

Hatua ya 3: Kuangaza ESP-01

Katika hatua hii, tutaangazia ESP-01 na mchoro wa arduino. Ikiwa haujawahi kuangaza moduli ya ESP-01, unaweza kufuata maelekezo yangu kukuanza:

Unaweza kupata mchoro wangu kwenye ukurasa wangu wa github:

Katika mchoro, kwa kiwango cha chini unahitaji kubadilisha habari zifuatazo zinazohusu mtandao wako wa nyumbani / usanidi:

#fafanua MQTT_SERVER "10.0.0.30" const char * ssid1 = "SSID"; const char * password1 = "MYSSIDpassword";

Katika mtandao wangu wa nyumbani, nina sehemu mbili za ufikiaji ambazo zinatangaza SSID 2 tofauti, na mchoro huu utaruhusu upungufu wa kazi kwa kuunganisha kwa SSID inayofuata ikiwa mawasiliano ya AP ya sasa imepotea. Ikiwa una SSID moja tu, jaza ssid1 na ssid2 na thamani sawa.

Mara tu unapofanya marekebisho, pakia mchoro kwenye ESP-01, na unganisha ESP-01 kwenye bodi ya kiolesura.

Hatua ya 4: Jaribu Kukimbia

Jaribu kukimbia
Jaribu kukimbia
Jaribu kukimbia
Jaribu kukimbia
Jaribu kukimbia
Jaribu kukimbia

Kutoka hatua ya 1 tumejenga bodi ya kiolesura cha ESP-01, na kutoka hatua ya 2 tuna usambazaji wa umeme wa 3.3V kwa bodi ya ESP-01. Sasa tunaunganisha pato la usambazaji wa umeme kwa bodi kulingana na mchoro wa mzunguko, umeonyeshwa kama V1.

Sasa hatua inayofuata ni kuunganisha vituo vya Trans / Door vya chime kwenye viunganisho vya bodi ya kiolesura iliyoonyeshwa kama "Vituo vya Chime za Mlango". Kwa kuwa chime yangu imewekwa juu ukutani, kwa majaribio, ninaendesha kebo kwa muda mfupi kutoka vituo vya chime hadi kwenye bodi ili niweze kuziba usambazaji wa umeme.

Ili kujaribu ikiwa contraption yetu inafanya kazi, rahisi zaidi itakuwa kufuatilia ujumbe wa MQTT kwenye mtandao. Ili kufanya hivyo, unahitaji kufungua kikao cha SSH kwa broker wa mbu na utoe amri ifuatayo:

mbu_sub -v -t '#'

Amri iliyo hapo juu itaturuhusu kuona ujumbe wote wa MQTT ukija kwa broker.

Sasa ingiza usambazaji wa umeme kwa duka la ukuta, na ikiwa kila kitu kinafanya kazi, katika sekunde chache unapaswa kuona angalau ujumbe ufuatao wa MQTT:

sheria / MlangoBell / LWT Mkondoni

Sasa nenda nje na piga hodi ya mlango wako, na unapaswa kuona ujumbe huu:

tele / DoorBell ILIYO

Ukiona ujumbe huo, mradi wako umefanikiwa.

Nilijumuisha pia mada kadhaa muhimu za MQTT kwenye mchoro ambao unaweza kutumia:

"stat / DoorBellInfo": ujumbe huu unatumwa kila dakika kutoa muda wa ziada na maelezo mengine.

"cmnd / DoorBellInfo": ESP-01 itatuma habari ikiwa itapokea mada hii na thamani ya '1' (ascii = 49) "cmnd / DoorBellCPUrestart": ESP-01 itaanza upya ikiwa itapokea mada hii na thamani ya '1 '(ascii = 49) "cmnd / DoorBellCPUreset": ESP-01 itaweka upya ikiwa itapokea mada hii na thamani ya' 1 '(ascii = 49)

"tele / FrontDoorBell": ESP-01 itatuma msg katika mada hii na thamani ya 'ON' ikiwa kengele ya mlango imebanwa

Hatua ya 5: Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime

Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime
Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime
Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime
Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime
Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime
Kuunganisha Bodi na Usambazaji wa Nguvu kwa Chime

Sasa kwa kuwa tumefanikiwa kukimbia mtihani, tunahitaji kukusanya bodi na usambazaji wa umeme ndani ya chime yetu ya mlango (ikiwezekana). Katika chime yangu iliyopo, kuna kizimba tupu ambacho niliweza kukata wazi na kutoshea usambazaji wa umeme ndani ya nafasi hiyo. Bodi ya ESP-01 haifai ndani ya nafasi hiyo ndogo, lakini bado inafaa ndani ya sanduku la chime kwa jumla. Nilitumia mkanda mzito wa pande mbili kuweka bodi ya kiolesura cha ESP-01.

Sasa tunaweza kuondoa vifungo vya chuma kutoka kwa sinia yetu ya USB na kuzibadilisha na kebo nzito ambayo tunaweza kuunganisha kwenye wiring ya nyumba. Hakikisha kuzima mzunguko wako wa mzunguko ambao hutoa umeme kwa mzunguko wa chime.

Ikiwa hakuna nafasi ya kutosha kutoshea mradi wetu kwenye chime ya mlango iliyopo, utahitaji kuiweka kwenye sanduku tofauti na kuiweka karibu na chime ya mlango.

Hatua ya 6: Kugusa Mwisho

Kugusa Mwisho
Kugusa Mwisho

Sasa kwa kuwa tuna mradi unaofanya kazi na kuweza kuchapisha ujumbe wa MQTT kwa broker, hatua inayofuata ni kufikiria wazo la kufanya na hiyo.

Katika mradi wangu, ninatumia Node-RED kusikiliza / kujiandikisha kwa mada hiyo ya mlango wa MQTT na kutangaza kwa wasemaji kadhaa wa nyumbani wa google. Kwa kuongezea hayo, niliunganisha pia mtiririko huo na nodi ya pushbullet ili kutuma arifa kwa simu yangu ya android kwa hivyo najua ikiwa mtu yeyote atapiga hodi ya mlango hata kama siko nyumbani. Arifa ya Pushbullet haifai kwa wengine, lakini imekuwa mara kadhaa muhimu kwangu, pamoja na kamera ya video kwenye ukumbi wangu wa mbele, ninaweza kuona ni nani alikuja kudondosha wanaojifungua (kawaida hupiga kengele ya mlango). Siwezi kutegemea sana kipengee cha kugundua mwendo wa kamera kwa sababu ya kuingiliwa anuwai, haswa kusonga vivuli vya miti.

Picha kwenye hatua hii, inaonyesha mtiririko wa Node-RED kutimiza hii. Unaweza pia kubandika mtiririko kutoka kwa ukurasa wangu wa github kwenye Node-RED yako:

Tangazo la nyumba ya Google ni mfano mmoja tu wa mradi huu, lakini nadhani ni muhimu zaidi na ya vitendo. Unaweza kusanikisha kila wakati kwa msikilizaji mwingine wa MQTT, au hata kutumia IFTTT kuendesha vifaa vingine juu ya kengele ya mlango inayosukumwa.

Furahiya…

Ilipendekeza: