Orodha ya maudhui:

Postino: Je! Postman Alitoa Chochote ?: Hatua 6 (na Picha)
Postino: Je! Postman Alitoa Chochote ?: Hatua 6 (na Picha)

Video: Postino: Je! Postman Alitoa Chochote ?: Hatua 6 (na Picha)

Video: Postino: Je! Postman Alitoa Chochote ?: Hatua 6 (na Picha)
Video: Только правда имеет значение S3E6 2024, Novemba
Anonim
Postino: Je! Postman alitoa chochote?
Postino: Je! Postman alitoa chochote?

Sio wazo langu: siku moja rafiki aliniuliza njia ya kuangalia kwa mbali ikiwa barua-pepe yoyote ilikuwa imewekwa kwenye sanduku lake la barua. Sanduku la barua haliko kwenye barabara ya kutembea kwa mlango wake, kwa kuwa yeye ni mvivu, alijiuliza ikiwa kifaa cha teknolojia kinaweza kumuonya juu ya barua yoyote kwenye sanduku la barua. Nilitazama soko na sikuweza kupata kifaa chochote kilichotengenezwa tayari kinachofaa mahitaji yake, kwa hivyo nilijiletea changamoto mwenyewe: kwanini usibuni na kuijenga?

Vikwazo vilikuwa:

  • inaendeshwa na betri na maisha ya kuridhisha kati ya mabadiliko ya betri;
  • Mawasiliano ya WiFi;
  • angalia mara moja tu kwa siku ikiwa kulikuwa na barua au la;

Swali kuu lilikuwa: ni aina gani ya sensorer inayoweza kutoshea mahitaji yangu? Sensorer ya ukaribu haikuweza kufanya kazi, kwani hundi ilibidi ifanyike mara moja tu kwa siku na sio wakati halisi; sensa ya uzani, kwani hii ingeongeza shida za ugumu na unyeti (karatasi inaweza kuwa nyepesi sana). Chaguo langu lilitua kwenye sensorer ya Wakati wa Ndege (laser ndogo). Mara tu ikikadiriwa kwa saizi ya kisanduku cha barua, chochote kilichowekwa katikati kingesababisha sensor! Kuzingatia vizuizi 3, niliamua kutumia ESP8266 (kuendesha programu na kuunganisha na WiFi), sensa ya VL6180 Time-of-Flight kwa kipimo na DS3231 Real Time Clock kuchochea mzunguko wote mara moja kwa siku: ndivyo Postino alizaliwa!

Hatua ya 1: Sehemu na Vipengele

  • ESP8266-01 (au ESP-12E NodeMCU)
  • VL6108 sensa ya wakati wa ndege
  • DS3231 Saa Saa Saa
  • IRLZ44 N-kituo MosFET
  • BC547 Transistor
  • Resistors
  • CR123 Betri

Hatua ya 2: Sensor

Sensorer
Sensorer

Moyo wa mfumo ni sensa ya VL6180. Hii ni teknolojia ya kuvunja ardhi inayoruhusu umbali kamili kupimwa bila kutegemea kutafakari kwa malengo. Badala ya kukadiria umbali kwa kupima kiwango cha nuru iliyoonyeshwa nyuma kutoka kwa kitu (ambayo inaathiriwa sana na rangi na uso), VL6180X inapima haswa wakati mwangaza unachukua kusafiri kwenda kwa kitu kilicho karibu na kutafakari tena kwenye sensa (Saa -ya-Ndege). Kuchanganya kitovu cha IR, sensorer anuwai na sensa ya taa iliyoko ndani katika kifurushi kinachoweza kutumika tayari cha tatu-kwa-moja, VL6180X ni rahisi kujumuisha na kuokoa mtengenezaji wa bidhaa ya mwisho kwa muda mrefu na ya gharama kubwa ya uboreshaji wa macho na mitambo.

Moduli imeundwa kwa operesheni ya nguvu ya chini. Nilitumia bodi ya kuzuka ya Pololu ambayo ina vidhibiti vya voltage kwenye bodi ambayo inaruhusu kufanya kazi juu ya anuwai ya voltage ya pembejeo ya 2.7 V hadi 5.5 V.

Sensor inaruhusu sababu 3 za kuongeza ukubwa ambazo zinaweka kiwango cha juu cha kipimo kutoka cm 20 hadi 60, na unyeti tofauti. Kwa kusanidi sababu ya kuongeza anuwai, kiwango cha juu cha sensorer kinaweza kuongezeka kwa gharama ya azimio la chini. Kuweka sababu ya kuongeza kwa 2 hutoa hadi 40 cm anuwai na azimio la 2 mm, wakati sababu ya kuongeza ya 3 hutoa hadi 60 cm anuwai na azimio la 3 mm. Lazima ujaribu mizani 3 na vipimo vya sanduku lako la barua. Kama yangu ilikuwa 25 cm (H) nilitumia kiwango = 1.

Hatua ya 3: Uwekaji Saa wa Saa Saa

Kwa RTC nilitumia bodi ya kuzuka ya DS3231 ambayo inajumuisha EEPROM (haina maana kwa kusudi langu) na betri ya saizi ya sarafu. Nilipoamua kuwezesha RTC kupitia betri kuu ya kifaa (3v CR123), niliondoa betri ya sarafu; kuokoa nguvu pia niliondoa EEPROM (kwa kukata kwa uangalifu pini zake) na ulingo ulioongozwa.

Betri ya sarafu haikuwa na faida kwangu kwa sababu sikuhitaji kuweka tarehe halisi / saa / dakika / sekunde, lakini RTC ilibidi tu kuhesabu kwa masaa 24 na kisha kuchochea kengele kuwezesha kifaa.

Hatua ya 4: Nyinginezo tofauti kwenye Bodi

Nyingine Miscellaneous kwenye Bodi
Nyingine Miscellaneous kwenye Bodi
Nyingine Miscellaneous kwenye Bodi
Nyingine Miscellaneous kwenye Bodi

Kuwasha kifaa kunatimizwa na transistor na mzunguko wa MosFET, unaosababishwa na kengele ya RTC. Mara kengele inapowekwa tena, mzunguko hukata nguvu kwa kifaa kwa mzunguko mwingine wa saa 24. Wakati kengele inapofikiwa, DS3231 hubadilisha pini kutoka juu hadi chini: katika hali ya kawaida transistor imejaa na kaptula chini ya lango la MosFET. Mara kengele itakapoleta msingi wa transistor chini, inafungua na inaruhusu MosFET kufunga mzunguko na kutoa nguvu kwa vifaa vingine vyote.

Kwa kuongeza, niliongeza jumper "test-1M". Kusudi la swichi hii ni - ikiwa imeamilishwa - kubadilisha mzunguko kutoka mara moja kwa siku hadi mara moja kwa dakika, ili kufanya majaribio ya kupelekwa. Ili kubadilisha muda kutoka siku moja hadi dakika moja, kwanza unahitaji kufunga jumper "Test-C" kwa sekunde 15, kupitisha kipindi cha kengele ya saa na kuwasha kifaa. Wakati majaribio yamekamilika, fungua vipuka na usanidi kifaa (nguvu ya mzunguko).

Hatua ya 5: Mpangilio

Mpangilio
Mpangilio

Hatua ya 6: Programu na Mantiki

Wakati wa majaribio niliyotumia (kwa sababu za kiutendaji) mtawala wa NodeMCU, kwa hivyo programu inachukua huduma hii kwa kuweka CHIP variale kuwa "NodeMCU" au "esp8266".

Mchoro huo hutumia maktaba ya WiFiManager kuruhusu kifaa kuungana na WiFi AP halali wakati wa kukimbia kwanza. Katika hali kama hiyo, kifaa kinaingia katika hali ya AP, hukuruhusu kuungana nayo na uchague mtandao sahihi wa WiFi kujiunga. Baada ya hapo, usanidi wa mtandao umehifadhiwa kwenye EPROM kwa mizunguko inayofuata.

ResT_MSG inayobadilika ina ujumbe wa http kutuma wakati sensor inapata kitu kwenye sanduku la barua. Kwa upande wangu, hutuma ujumbe kwa seva ya REST ya kijeshi, lakini unaweza kuibadilisha kama unavyopendelea: ujumbe wa Telegram BOT, hafla ya IFTTT WebHook, n.k.

Mchoro uliobaki wote uko kwenye kazi ya kuanzisha (), kwani kitanzi hakijafikiwa kamwe. Baada ya usanidi unaohitajika kwa maktaba kadhaa, programu huweka saa saa 00:00:01 na kengele mara moja kwa siku (au mara moja kwa dakika ikiwa jumper ya "test-1M" imeamilishwa). Halafu hufanya kipimo, hutuma arifa (ikiwa kitu chochote kinapatikana kwenye sanduku la barua) na kuweka upya pini ya kengele, ikizima kifaa. Mwisho wa mzunguko, ni RTC tu inayowashwa, kuhesabu kwa masaa 24. Jaribio la jumper-1M limeunganishwa na pini ya RX ya ESP8266, inayotumiwa kama GPIO-3 kupitia mpangilio: setMode (PIN, FUNCTION_3). Kwa sababu ya hii, huwezi kutumia mfuatiliaji wa serial wakati wa kuendesha ESP8266: laini ya "#fafanua DEBUG" (ambayo inaruhusu prints zote za serial kwenye mchoro) hutumiwa tu wakati NodeMCU imewekwa badala ya ESP8266.

ESP8266 inashughulikia mawasiliano ya I2C na RTC na sensor kupitia pini zake GPIO-0 na GPIO-2, iliyoanzishwa kwenye maktaba ya Wire.

Nambari kamili inaweza kupakuliwa kutoka kwa kiunga hiki.

Mashindano ya Teknolojia ya Kusaidia
Mashindano ya Teknolojia ya Kusaidia
Mashindano ya Teknolojia ya Kusaidia
Mashindano ya Teknolojia ya Kusaidia

Mkimbiaji Juu katika Mashindano ya Teknolojia ya Kusaidia

Ilipendekeza: