Orodha ya maudhui:

Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra: Hatua 5
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra: Hatua 5

Video: Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra: Hatua 5

Video: Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra: Hatua 5
Video: JE , NI SAHIHI KUFANYA MAPENZI NA MJAMZITO? 2024, Novemba
Anonim
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra
Sensor ya Milango isiyo na waya - Nguvu ya chini ya Ultra

Bado sensorer nyingine ya mlango !! Kweli motisha kwangu kuunda kihisi hiki ni kwamba wengi ambao niliwaona kwenye mtandao walikuwa na kiwango cha juu au kingine. Baadhi ya malengo ya sensa kwangu ni:

1. Sensor inapaswa kuwa haraka sana - ikiwezekana chini ya sekunde 5

2. Sensorer inapaswa kukimbia betri ya Li-ion ya 3.7V kwani nina kadhaa kati yao wamelala

3. Sensor inapaswa kukimbia kwa miezi mingi kwa malipo moja ya betri. Inapaswa kula <10uA katika hali ya kulala

4. Sensor inapaswa kuamka kwa kupeleka data muhimu kama hali ya betri hata wakati mlango hauendeshwi kwa muda mrefu.

5. Sensor inapaswa kusambaza data kwenye mada ya MQTT wakati mlango unafunguliwa na vile vile wakati mlango umefungwa

6. Sensor inapaswa kutumia nguvu sawa bila kujali hali ya mlango

Kufanya kazi kwa sensor:

Sensor ina watawala 2 kuu. Ya kwanza ni ndogo ndogo ya kudhibiti ATiny 13A. Ya pili ni ESP ambayo kawaida iko kwenye hali ya kulala na inaamka tu wakati ATiny inapoiwezesha. Mzunguko wote pia unaweza kufanywa na ESP tu kwa kuitumia katika hali ya kulala lakini sasa inayotumia ni kubwa zaidi kuliko inahitajika kwa betri kudumu kwa miezi kwa hivyo ATTiny inakuja kuwaokoa. Inatumika tu kwa kusudi la kuamka kila sekunde N, tafuta hafla ya mlango au hafla ya kukagua afya, ikiwa kuna moja, inashikilia pini ya CH_PD ya ESP kwenda juu na inapeleka ishara inayofaa ya aina ya hafla hiyo kwa ESP. Jukumu lake linaishia hapo.

ESP kisha inachukua, inasoma aina ya ishara, inaunganisha na WiFi / MQTT, inachapisha ujumbe unaohitajika pamoja na kiwango cha betri na kisha inajiwasha yenyewe kwa kurudisha pini ya EN kwa LOW.

Kwa kutumia chips hizi kwa njia hii nachukua faida ya usingizi mdogo wa ATTiny na sifuri ya sasa ya ESP wakati chip imezimwa kupitia pini ya CH_PD.

Vifaa

Pre-req:

- Ujuzi wa kupanga ATTiny & ESP 01

- Ujuzi wa vifaa vya kuuza kwenye PCB

ESP-01 (au ESP yoyote)

CHINI 13A - AVR

LDO 7333-A - Mdhibiti wa voltage ya Kuacha Chini

Resistors - 1K, 10K, 3K3

Watendaji: 100uF, 0.1 uF

Kitufe cha kushinikiza, switch ndogo ya ON / OFF - (zote hiari)

Diode - IN4148 (au sawa sawa)

Li-ion Betri

Kubadilisha Reed

Kesi ya kuweka nyumba yote

Solder, PCB nk

Hatua ya 1: Skematiki na Nambari ya Chanzo

Skimatiki na Nambari ya Chanzo
Skimatiki na Nambari ya Chanzo

Skematiki ni kama inavyoonyeshwa kwenye mchoro ulioambatanishwa.

Nimejumuisha P Channel MOSFET kwa ulinzi wa polarity reverse. Ikiwa hauitaji hii, unaweza kuiacha. Kituo chochote cha P MOSFET na Rds ON ya chini itafanya.

Kwa sasa ESP haina uwezo wa OTA lakini hiyo ni kwa uboreshaji wa siku zijazo.

Nambari ya chanzo smart-mlango-sensor

Hatua ya 2: Kufanya kazi kwa Mzunguko

Mtiririko mdogo wa Kufanya kazi

Uchawi hapa hufanyika kwa jinsi ATTiny inafuatilia msimamo wa ubadilishaji wa mlango.

Chaguo la kawaida litakuwa kuambatisha kontena la kuvuta hadi kwenye swichi na kuendelea kuifuatilia hali. Hii ina upande wa chini wa matumizi ya kila wakati ya sasa na kontena la kuvuta. Njia ambayo imeepukwa hapa ni kwamba nimetumia pini mbili kufuatilia swichi badala ya moja. Nimetumia PB3 & PB4 hapa. PB3 hufafanuliwa kama pembejeo na PB4 kama pato na INPUT_PULLUP ya ndani kwenye PB3. Kawaida PB4 hufanyika JUU wakati ATTiny iko kwenye hali ya kulala. Hii inahakikisha hakuna mtiririko wa sasa kupitia pembejeo ya kuvuta kontena bila kujali msimamo wa swichi ya mwanzi. yaani. Ikiwa swichi imefungwa, zote PB3 & PB4 ziko juu na kwa hivyo hakuna mtiririko wa sasa kati yao. Ikiwa swichi iko wazi basi hakuna njia kati yao na kwa hivyo ya sasa ni sifuri. Wakati ATTiny inapoamka inaandika CHINI kwenye PB4 halafu inakagua hali ya PB3. Ikiwa PB3 iko juu basi swichi ya mwanzi imefunguliwa mwingine imefungwa. Halafu inaandika HIGH juu ya PB4.

Mawasiliano kati ya ATTiny & ESP hufanyika kupitia pini mbili PB1 / PB2 iliyounganishwa na Tx / RX ya ESP. Nimefafanua ishara kama

PB1 PB2 ====== Tx Rx

0 0 ====== WAKE_UP (Angalia Afya)

0 1 ====== SENSOR_OPEN

1 0 ====== SENSOR_CLOSED

1 1 ====== USITUMIE

Mbali na kutuma ishara kwa ESP pia hutuma pigo la juu kwenye PB0 ambayo imeunganishwa na pini ya ESP CH_PD. Hii inaamsha ESP. Jambo la kwanza ESP inafanya kushikilia GPIO0 HIGH ambayo imeunganishwa na CH_PD na hivyo kuhakikisha nguvu zake zinaongezeka hata ikiwa ATTiny itaondoa PB0 HIGH. Udhibiti sasa uko na ESP kuamua wakati inataka kupunguza nguvu.

Halafu inaunganisha na WiFi, MQTT, inachapisha ujumbe na inajipa nguvu kwa kuandika LOW kwenye GPIO0.

Mtiririko wa ESP 01:

Mtiririko wa ESP ni sawa mbele. Inaamka na kusoma maadili ya pini za Tx / Rx ili kujua ni aina gani ya ujumbe utakaochapishwa. Inaunganisha kwa WiFi na MQTT, inachapisha ujumbe na inajipa nguvu.

Kabla ya kutia nguvu, huangalia tena maadili ya pini za kuingiza ili kuona ikiwa zimebadilika tangu ilisomwa mara ya mwisho. Hii ni kutunza ufunguzi wa haraka na kufunga mlango. Ikiwa hauna hundi hii basi kuna visa kadhaa unaweza kukosa kufungwa kwa mlango ikiwa imefungwa ndani ya sekunde 5-6 za kufungua. Hali halisi ya mlango kufunguliwa na kufungwa ndani ya sekunde 2 au hivyo ni vizuri kunaswa na kitanzi cha muda ambacho kinaendelea kutuma ujumbe kwa muda mrefu kama hali ya sasa ya mlango ni tofauti na ile ya awali. Hali tu ambayo inaweza kukosa kurekodi hafla yote ya wazi / ya karibu ni wakati mlango unafunguliwa mara kwa mara / kufungwa ndani ya dirisha la sekunde 4-5 ambayo ni kesi isiyowezekana - labda kesi ya mtoto fulani akicheza na mlango.

Hatua ya 3: Ukaguzi wa Afya

Nilihitaji pia njia ya kuwa na ujumbe wa kuangalia afya kutoka kwa ESP ambapo hutuma kiwango cha betri cha ESP na pia kuhakikisha kuwa sensorer inafanya kazi vizuri bila ukaguzi wa mwongozo. Kwa hili ATTiny hutuma ishara ya WAKE_UP kila saa 12. Inaweza kusanidiwa kupitia anuwai ya WAKEUP_COUNT katika nambari ya ATTiny. Hii ni muhimu sana kwa milango au madirisha ambayo hufunguliwa mara chache na kwa hivyo huenda usijue ikiwa kuna kitu kibaya na sensor au betri yake.

Ikiwa hauitaji utendaji wa ukaguzi wa afya basi dhana nzima ya kutumia ATTiny haihitajiki. Katika hali hiyo unaweza kupata miundo mingine ambayo watu wameunda ambapo usambazaji kwa ESP unalishwa kupitia MOSFET na kwa hivyo unaweza kupata sare ya sasa wakati mlango haufanyiwi kazi. Kuna mambo mengine ya kutunzwa kama mchoro wa sasa kuwa sawa katika mlango wazi na nafasi ya karibu ya mlango - kwa kuwa mahali fulani niliona muundo ambao ulitumia ubadilishaji wa mwanzi wa serikali 3 badala ya hali 2 ya kawaida.

Hatua ya 4: Vipimo vya Nguvu na Maisha ya Batri

Nimepima matumizi ya sasa ya mzunguko na inachukua ~ 30uA wakati wa kulala na karibu. Kwenda na hati za data za ATTiny, inapaswa kuwa karibu 1-4 uA kwa mzunguko mzima ikiwa ni pamoja na umeme wa sasa wa LDO lakini basi vipimo vyangu vinaonyesha 30. MOSFET na LDO hutumia sasa isiyo na maana.

Kwa hivyo betri ya 800mAH inapaswa kudumu kwa muda mrefu. Sina takwimu halisi lakini nimekuwa nikitumia kwenye milango yangu 2 kwa zaidi ya mwaka mmoja sasa na kila seli ya 18650 iliyo na karibu 800mAH imesalia ndani kwa muda wa miezi 5-6 kwenye mlango wangu kuu ambao unafungua na kufunga angalau mara 30 kwa siku. Lile kwenye mlango wa paa ambalo hufungua mara chache tu kwa wiki, hudumu miezi 7-8.

Hatua ya 5: Maboresho ya Baadaye

1. ESP haikubali utoaji wa ujumbe wa MQTT. Programu inaweza kuboreshwa kwa kujisajili kwenye mada inayochapisha ujumbe ili kudhibitisha uwasilishaji au maktaba ya Async MQTT inaweza kutumiwa kutuma ujumbe na QoS 1.

2. Sasisho la OTA: Nambari ya ESP inaweza kubadilishwa ili kusoma mada ya MQTT kwa sasisho na kwa hivyo ingia katika hali ya OTA kupokea faili.

3. ESP01 inaweza kubadilishwa na ESP-12 kupata ufikiaji wa PIN nyingi za kuingiza na kwa hivyo inaweza kushikamana na sensorer zaidi sawa. Katika hali hiyo mawasiliano kupitia njia 2 kidogo haiwezekani. Hii inaweza kuboreshwa kutekeleza mawasiliano ya I2C kati ya ATTiny & ESP. Hii ni ngumu lakini inafanya kazi. Ninafanya kazi katika usanidi mwingine ambapo ATTiny hutuma maadili ya usimbuaji wa rotary kwa ESP juu ya laini ya I2C.

4. Mzunguko wa sasa unachunguza Vcc ya ndani ya ESP, Ikiwa tutatumia ESP12 basi hii inaweza kubadilishwa ili kusoma kiwango halisi cha betri kupitia pini ya ADC.

5. Katika siku zijazo pia nitachapisha marekebisho kwa hii ambayo inaweza kutumika kama sensa ya kibinafsi bila hitaji la MQTT au mfumo wowote wa kiotomatiki wa nyumbani. Sensor itafanya kazi peke yake na inaweza kupiga simu wakati inasababishwa - kwa kweli inahitaji muunganisho wa mtandao kwa hili.

6. Na orodha inaendelea…

7. Rejea ulinzi wa betri - IMETIMIWA (Picha halisi za kifaa ni za zamani na kwa hivyo hazionyeshi MOSFET)

Ilipendekeza: