Obsah:

Postino: Poskytol poštár niečo?: 6 krokov (s obrázkami)
Postino: Poskytol poštár niečo?: 6 krokov (s obrázkami)

Video: Postino: Poskytol poštár niečo?: 6 krokov (s obrázkami)

Video: Postino: Poskytol poštár niečo?: 6 krokov (s obrázkami)
Video: Часть 3 — Аудиокнига Эдит Уортон «Дом веселья» (Книга 1 — главы 11–15) 2024, December
Anonim
Postino: Dodal niečo poštár?
Postino: Dodal niečo poštár?

Nie je to moja predstava: jedného dňa ma priateľ požiadal o spôsob, akým by som mohol na diaľku skontrolovať, či mu do schránky neleží žiadna pošta. Poštová schránka nie je na chodníku k jeho dverám, takže keďže je lenivý chlapec, zaujímalo ho, či by ho technologický prístroj mohol varovať pred akýmkoľvek písmenom do schránky. Pozrel som sa na trh a nenašiel som žiadne pripravené zariadenie vhodné pre jeho potreby, a tak som si položil výzvu: prečo ho nenavrhnúť a postaviť?

Obmedzenia boli:

  • napájanie z batérie s primeranou životnosťou medzi výmenou batérie;
  • WiFi komunikácia;
  • iba raz denne skontrolujte, či bola pošta alebo nie;

Hlavnou otázkou bolo: aký typ snímača by mohol vyhovovať mojim požiadavkám? Senzor priblíženia nemôže fungovať, pretože kontrolu bolo potrebné vykonať iba raz denne a nie v reálnom čase; ani snímač hmotnosti, pretože by to prinieslo problémy s komplexnosťou a citlivosťou (list papiera by mohol byť veľmi ľahký). Moja voľba pristála na senzore Time-of-Flight (mikro laser). Akonáhle by bol kalibrovaný na veľkosť schránky, čokoľvek, čo by ležalo v strede, by spustilo senzor! Vzhľadom na tri obmedzenia som sa rozhodol použiť ESP8266 (spustený softvér a prepojenie s WiFi), snímač času letu VL6180 na meranie a hodiny v reálnom čase DS3231 na spustenie všetkých obvodov raz denne: takto to bolo Postino sa narodilo!

Krok 1: Časti a súčasti

  • ESP8266-01 (alebo ESP-12E NodeMCU)
  • VL6108 Snímač času letu
  • Hodiny reálneho času DS3231
  • IRLZ44 N-kanálový MosFET
  • BC547 tranzistor
  • Rezistory
  • Batéria CR123

Krok 2: Senzor

Senzor
Senzor

Srdcom systému je senzor VL6180. Ide o prelomovú technológiu, ktorá umožňuje meranie absolútnej vzdialenosti nezávisle od odrazivosti cieľa. Namiesto odhadu vzdialenosti meraním množstva svetla odrazeného späť od objektu (ktorý je výrazne ovplyvnený farbou a povrchom), VL6180X presne meria čas, ktorý svetlo potrebuje na to, aby sa dostalo na najbližší objekt a odrazilo sa späť na senzor (čas -letu). Kombinácia infračerveného žiariča, snímača dosahu a snímača okolitého svetla v tri v jednom, reflowable balení pripravenom na použitie, VL6180X sa ľahko integruje a šetrí výrobcovi konečného produktu dlhé a nákladné optimalizácie optického a mechanického dizajnu.

Modul je navrhnutý pre prevádzku s nízkym výkonom. Použil som oddeľovaciu dosku Pololu, ktorá má na doske regulátory napätia, ktoré jej umožňujú pracovať v rozsahu vstupného napätia 2,7 V až 5,5 V.

Senzor umožňuje 3 platné faktory mierky, ktoré nastavujú maximálny rozsah merania od 20 do 60 cm, s rôznou citlivosťou. Konfiguráciou faktora škálovania rozsahu je možné zvýšiť potenciálny maximálny dosah senzora za cenu nižšieho rozlíšenia. Nastavením faktora mierky na 2 získate rozsah až 40 cm s rozlíšením 2 mm, zatiaľ čo faktor mierky 3 poskytne rozsah až 60 cm s rozlíšením 3 mm. Musíte otestovať 3 váhy s rozmermi vašej schránky. Keď som mal 25 cm (H), použil som mierkový faktor = 1.

Krok 3: Prispôsobenie hodín v reálnom čase

Na RTC som použil oddeľovaciu dosku DS3231, ktorá obsahuje EEPROM (na môj účel zbytočný) a batériu veľkosti mince. Keď som sa rozhodol napájať RTC pomocou batérie hlavného zariadenia (3v CR123), vybral som mincovú batériu; kvôli šetreniu energie som tiež odstránil EEPROM (opatrným odrezaním jeho kolíkov) a vstavanú diódu.

Gombíková batéria nebola pre mňa užitočná, pretože som nepotreboval uchovávať dátum/hodinu/minútu/sekundu v reálnom čase, ale RTC musel počítať iba 24 hodín a potom spustiť alarm, aby sa zariadenie zaplo.

Krok 4: Ostatné rôzne na palube

Ostatné Rôzne na palube
Ostatné Rôzne na palube
Ostatné Rôzne na palube
Ostatné Rôzne na palube

Zapnutie zariadenia je zaistené tranzistorom a obvodom MosFET, spusteným alarmom RTC. Akonáhle je alarm resetovaný, obvod preruší napájanie zariadenia na ďalších 24 hodín. Keď sa dosiahne alarm, DS3231 prepne pin z vysokého na nízky: za normálnych podmienok je tranzistor nasýtený a skratuje k uzemnenej bráne MosFET. Akonáhle alarm prinesie základňu tranzistora na zem, otvorí sa a umožní MosFETu uzavrieť obvod a dodať napájanie zvyšným komponentom.

Okrem toho som pridal prepojku „test-1M“. Účelom tohto prepínača je - ak je aktivovaný - zmeniť cyklus z raz denne na raz za minútu, aby sa spustili testy nasadenia. Aby ste mohli zmeniť interval z jedného dňa na jednu minútu, musíte najskôr zapnúť prepojku „Test-C“na asi 15 sekúnd, obísť tak dobu aktivácie budíka a zapnúť zariadenie. Po dokončení testov otvorte prepojky a resetujte zariadenie (zapnite napájanie).

Krok 5: Schéma

Schematický
Schematický

Krok 6: Softvér a logika

Počas testov som použil (z praktických dôvodov) ovládač NodeMCU, takže softvér sa o to stará nastavením premennej CHIP na „NodeMCU“alebo „esp8266“.

Náčrt implementuje knižnicu WiFiManager, ktorá umožňuje zariadeniu pripojiť sa k platnému WiFi AP počas prvého spustenia. V takom prípade zariadenie prejde do režimu AP, čo vám umožní pripojiť sa k nemu a vybrať správnu sieť WiFi, ku ktorej sa chcete pripojiť. Potom sa konfigurácia siete uloží do EPROM na ďalšie cykly.

Premenná REST_MSG obsahuje správu http, ktorú je potrebné odoslať, keď senzor nájde v schránke predmet. V mojom prípade to pošle správu na domotický server REST, ale môžete to zmeniť, ako chcete: správa Telegram BOT, udalosť IFTTT WebHook atď.

Zvyšok náčrtu je celý vo funkcii setup (), pretože slučka sa nikdy nedosiahne. Po konfiguráciách potrebných pre niekoľko knižníc softvér nastaví čas na 00:00:01 a budík na raz denne (alebo raz za minútu, ak je aktivovaná prepojka „test-1M“). Potom urobí meranie, odošle upozornenie (ak sa v schránke nájde nejaký predmet) a resetuje alarmový kolík, čím sa zariadenie vypne. Na konci cyklu je zapnutý iba RTC, ktorý počíta 24 hodín. Prepojka Test-1M je pripojená k pinu RX na ESP8266, používanom ako GPIO-3, pomocou nastavenia: setMode (PIN, FUNCTION_3). Z tohto dôvodu nemôžete používať sériový monitor, keď je spustený ESP8266: riadok „#define DEBUG“(ktorý umožňuje všetky sériové výtlačky v náčrte) sa používa iba vtedy, ak je namiesto ESP8266 nainštalovaný NodeMCU.

ESP8266 zvláda komunikáciu I2C s RTC a snímačom prostredníctvom svojich kolíkov GPIO-0 a GPIO-2, inicializovaných v knižnici Wire.

Celý kód je možné stiahnuť z tohto odkazu.

Pomocná technická súťaž
Pomocná technická súťaž
Pomocná technická súťaž
Pomocná technická súťaž

2. miesto v asistenčnej technickej súťaži

Odporúča: