Tartalomjegyzék:
- 1. lépés: Alkatrészek és alkatrészek
- 2. lépés: Az érzékelő
- 3. lépés: Valós idejű óra testreszabása
- 4. lépés: Egyéb egyéb a fedélzeten
- 5. lépés: Vázlatos
- 6. lépés: Szoftver és logika
Videó: Postino: Szállított -e valamit a postás?: 6 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Nem ötletem: egy nap egy barátom kért tőlem módot, hogy távolról ellenőrizhessem, nincs-e postafiók a postaládájában. A postafiók nincs az ajtajához vezető sétányon, ezért mivel lusta fiú, azon tűnődött, vajon egy technikai eszköz képes -e figyelmeztetni őt a postaládába helyezett levelekre. Megnéztem a piacot, és nem találtam az ő igényeinek megfelelő kész eszközt, ezért kihívást tettem fel magamnak: miért nem tervezem meg és építem meg?
A korlátozások a következők voltak:
- elemmel működő, ésszerű élettartammal az elemcserék között;
- WiFi kommunikáció;
- naponta egyszer ellenőrizze, hogy volt -e levél vagy sem;
A fő kérdés az volt: melyik érzékelő felel meg az igényeimnek? A közelségérzékelő nem tudott működni, mivel az ellenőrzést naponta csak egyszer kellett elvégezni, és nem valós időben; súlyérzékelő sem, mivel ez bonyolultabb és érzékenységi problémákat okozott volna (egy papírlap nagyon könnyű lehet). Választásom egy repülési idő (mikrolézer) érzékelőre esett. Miután kalibrálták a postaláda méretére, bármi, ami középen fekszik, aktiválta volna az érzékelőt! Figyelembe véve a 3 megkötést, úgy döntöttem, hogy egy ESP8266-ot használok (a szoftvert futtatva és a WiFi-hez kapcsolódva), egy VL6180-as repülési időérzékelőt a méréshez, és egy DS3231 valós idejű órát, hogy naponta egyszer elindítsam az összes áramkört: így Megszületett Postino!
1. lépés: Alkatrészek és alkatrészek
- ESP8266-01 (vagy ESP-12E NodeMCU)
- VL6108 Repülési idő érzékelő
- DS3231 Valós idejű óra
- IRLZ44 N-csatornás MosFET
- BC547 tranzisztor
- Ellenállások
- CR123 akkumulátor
2. lépés: Az érzékelő
A rendszer szíve a VL6180 érzékelő. Ez egy úttörő technológia, amely lehetővé teszi az abszolút távolság mérését a célreflexiótól függetlenül. Ahelyett, hogy a távolságot a tárgyról visszavert fény mennyiségének mérésével becsülné meg (amelyet a szín és a felület jelentősen befolyásol), a VL6180X pontosan méri azt az időt, amíg a fény eljut a legközelebbi objektumhoz, és visszaverődik az érzékelőhöz (Idő -repülés). Az infravörös sugárzót, a tartományérzékelőt és a környezeti fényérzékelőt ötvözi a három az egyben használatra kész, újratölthető csomagban, a VL6180X könnyen integrálható, és hosszú és költséges optikai és mechanikai tervezésoptimalizálást takarít meg a végtermék gyártója számára.
A modul kis teljesítményű működésre lett tervezve. A Pololu megszakítótáblát használtam, amelynek feszültségszabályzói vannak a fedélzeten, amelyek lehetővé teszik a 2,7 V és 5,5 V közötti bemeneti feszültségtartomány működését.
Az érzékelő 3 érvényes skálázási tényezőt tesz lehetővé, amelyek a mérés maximális tartományát 20 és 60 cm között állítják be, különböző érzékenységgel. A tartomány skálázási tényezőjének beállításával az érzékelő potenciális maximális hatótávja növelhető alacsonyabb felbontás árán. Ha a skálázási tényezőt 2 -re állítja, akkor akár 40 cm -es tartományt biztosít 2 mm -es felbontással, míg a 3 -as skálázási tényezővel akár 60 cm -es tartományt is biztosít 3 mm -es felbontással. A 3 skálát tesztelnie kell a postafiók méreteivel. Mivel az enyém 25 cm (H) volt, 1 -es skálatényezőt használtam.
3. lépés: Valós idejű óra testreszabása
Az RTC -hez egy DS3231 törőlapot használtam, amely tartalmaz egy EEPROM -ot (haszontalan a célomhoz) és egy érme méretű akkumulátort. Amikor úgy döntöttem, hogy az RTC -t a fő eszköz akkumulátorán (3 V -os CR123) keresztül táplálom, eltávolítottam az érmét; az energiatakarékosság érdekében eltávolítottam az EEPROM -ot (a csapok óvatos vágásával) és a fedélzeti ledet is.
Az érmeakkumulátor nem volt hasznos számomra, mert nem kellett a valós idejű dátumot/órát/percet/másodpercet tartani, de az RTC -nek csak 24 órán keresztül kellett számolnia, majd be kellett kapcsolnia a riasztást a készülék bekapcsolásához.
4. lépés: Egyéb egyéb a fedélzeten
A készülék bekapcsolását tranzisztor és MosFET áramkör végzi, amelyet az RTC riasztás vált ki. A riasztás törlése után az áramkör megszakítja a készülék áramellátását további 24 órás ciklusra. A riasztás elérésekor a DS3231 magasról alacsonyra kapcsolja a tűt: normál körülmények között a tranzisztor telített, és rövidre zárja a MosFET kapuját. Miután a riasztó a tranzisztor bázisát a földre hozza, kinyílik, és lehetővé teszi a MosFET számára, hogy lezárja az áramkört, és áramot adjon a többi alkatrésznek.
Ezenkívül hozzáadtam egy „teszt-1M” jumpert. Ennek a kapcsolónak az a célja - ha aktiválva van -, hogy a ciklust napi egyszerről percenként egyszer változtassa meg a telepítési tesztek futtatása érdekében. Annak érdekében, hogy az intervallumot egy napról egy percre változtassa, először be kell zárnia a „Test-C” jumpert körülbelül 15 másodpercre, hogy megkerülje az órajelzés aktiválási időszakát, és bekapcsolja a készüléket. A tesztek befejezése után nyissa ki az áthidalókat, és állítsa alaphelyzetbe a készüléket (ciklus teljesítmény).
5. lépés: Vázlatos
6. lépés: Szoftver és logika
A tesztek során (gyakorlati okokból) egy NodeMCU vezérlőt használtam, ezért a szoftver gondoskodik erről úgy, hogy a CHIP változót „NodeMCU” vagy „esp8266” értékre állítja.
A vázlat megvalósítja a WiFiManager könyvtárat, hogy lehetővé tegye az eszköz számára, hogy csatlakozzon egy érvényes WiFi hozzáférési ponthoz az első futtatás során. Ilyen esetben az eszköz AP módba lép, lehetővé téve a csatlakozást és a megfelelő WiFi hálózat kiválasztását a csatlakozáshoz. Ezt követően a hálózati konfigurációt az EPROM menti a következő ciklusokhoz.
A REST_MSG változó tartalmazza a http üzenetet, amelyet el kell küldeni, ha az érzékelő objektumot talál a postafiókban. Esetemben üzenetet küld egy dominikus REST szervernek, de tetszés szerint módosíthatja: Telegram BOT üzenet, IFTTT WebHook esemény stb.
A vázlat többi része a setup () függvényben található, mivel a ciklus soha nem érhető el. A több könyvtárhoz szükséges konfigurációk után a szoftver 00:00:01 órára állítja az órát, és az ébresztést naponta egyszer (vagy percenként egyszer, ha a „teszt-1M” jumper aktiválva van). Ezután elvégzi az intézkedést, elküldi az értesítést (ha bármilyen tárgy található a postaládában), és visszaállítja a riasztótüskét, leállítva a készüléket. A ciklus végén csak az RTC kapcsol be, 24 órán keresztül. A Test-1M jumper az ESP8266 RX tűjéhez van csatlakoztatva, amelyet GPIO-3-ként használunk a következő beállítással: setMode (PIN, FUNCTION_3). Emiatt nem használhatja a soros monitort az ESP8266 futtatása közben: a „#define DEBUG” sor (amely lehetővé teszi a vázlat összes soros nyomtatását) csak akkor használható, ha az ESP8266 helyett NodeMCU van telepítve.
Az ESP8266 kezeli az I2C kommunikációt az RTC-vel és az érzékelővel a vezetékek könyvtárában inicializált GPIO-0 és GPIO-2 érintkezőin keresztül.
A teljes kód letölthető erről a linkről.
Második hely a segítő technikai versenyen
Ajánlott:
DIY 37 LED Arduino rulett játék: 3 lépés (képekkel)
DIY 37 Leds Arduino Roulette Játék: A rulett egy kaszinójáték, amelyet a francia szóról neveztek el, jelentése kis kerék
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: 20 lépés (képekkel)
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: Helló, barátom! Ebben a kétrészes sorozatban megtanuljuk használni a Tinkercad áramköreit - ez egy szórakoztató, hatékony és oktató eszköz az áramkörök működésének megismerésére! A tanulás egyik legjobb módja, ha megteszed. Tehát először megtervezzük saját projektünket:
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
A számítógép szétszerelése egyszerű lépésekkel és képekkel: 13 lépés (képekkel)
A számítógép szétszerelése egyszerű lépésekkel és képekkel: Ez az utasítás a számítógép szétszereléséről szól. A legtöbb alapvető alkatrész moduláris és könnyen eltávolítható. Fontos azonban, hogy szervezett legyen ezzel kapcsolatban. Ez segít elkerülni az alkatrészek elvesztését, és az újra összerakást is