Sisukord:
- Samm: osad ja komponendid
- 2. samm: andur
- 3. samm: reaalajas kella kohandamine
- 4. samm: muud mitmesugused pardal
- Samm: skemaatiline
- 6. samm: tarkvara ja loogika
Video: Postino: kas postiljon andis midagi?: 6 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Pole minu idee: ühel päeval küsis üks sõber minult võimalust eemalt kontrollida, kas tema postkasti on postkasti postitatud. Postkast ei ole tema ukse juurde kulgeval rajal, nii et kuna ta on laisk poiss, mõtles ta, kas mõni tehnikavidin peaks teda postkasti saadetud kirjade eest hoiatama. Vaatasin turgu ja ma ei leidnud ühtegi tema vajadustele sobivat valmisseadet, seega esitasin endale väljakutse: miks mitte seda projekteerida ja ehitada?
Piirangud olid järgmised:
- patareitoitega, mõistliku elueaga patareivahetuste vahel;
- WiFi -side;
- kontrollige ainult üks kord päevas, kas posti oli või mitte;
Põhiküsimus oli: milline andur sobiks minu nõuetega? Lähedusandur ei saanud töötada, kuna kontrolli tuli teha vaid üks kord päevas, mitte reaalajas; kaaluandurit ka mitte, sest see oleks lisanud keerukuse ja tundlikkuse probleeme (paberileht võib olla väga kerge). Minu valik langes lennuaja (mikrolaser) andurile. Kui see on postkasti suuruse järgi kalibreeritud, oleks kõik keskel asetsev andur käivitanud! Arvestades kolme piirangut, otsustasin kasutada mõõtmiseks ESP8266 (tarkvara käivitamine ja WiFi-ühenduse loomine), VL6180 lennuaja andurit ja DS3231 reaalajas kella, et käivitada kõik vooluringid üks kord päevas: nii Postino sündis!
Samm: osad ja komponendid
- ESP8266-01 (või ESP-12E NodeMCU)
- VL6108 Lennuaja andur
- DS3231 reaalajas kell
- IRLZ44 N-kanaliga MosFET
- BC547 transistor
- Takistid
- Aku CR123
2. samm: andur
Süsteemi süda on VL6180 andur. See on murranguline tehnoloogia, mis võimaldab absoluutset kaugust mõõta sõltumata sihtmärgi peegeldusest. Selle asemel, et hinnata kaugust, mõõtes objektilt tagasi peegelduva valguse hulka (mida värv ja pind oluliselt mõjutavad), mõõdab VL6180X täpselt aega, mis kulub valgusel lähima objekti juurde liikumiseks ja andurile tagasi peegeldamiseks (aeg -lennult). Kombineerides infrapunakiirguri, kaugusanduri ja ümbritseva valguse anduri kolm-ühes kasutamisvalmis ümbertõstetavas pakendis, on VL6180X lihtne integreerida ning säästab lõpptoote valmistaja pikki ja kulukaid optilisi ja mehaanilisi disaini optimeerimisi.
Moodul on mõeldud väikese võimsusega töötamiseks. Kasutasin Pololu katkestusplaati, mille pardal on pingeregulaatorid, mis võimaldavad tal töötada sisendpingevahemikus 2,7 V kuni 5,5 V.
Andur võimaldab kolme kehtivat skaleerimistegurit, mis määravad mõõtmise maksimaalse vahemiku 20 kuni 60 cm, erineva tundlikkusega. Vahemiku skaleerimisteguri seadistamisega saab anduri potentsiaalset maksimaalset vahemikku suurendada madalama eraldusvõime hinnaga. Mastaabiteguri seadmine väärtusele 2 tagab kuni 40 cm vahemiku 2 mm eraldusvõimega, samas kui skaleerimistegur 3 tagab kuni 60 cm ulatuse 3 mm eraldusvõimega. Peate testima kolme skaalat oma postkasti mõõtmetega. Kuna minu pikkus oli 25 cm (H), kasutasin skaalategurit = 1.
3. samm: reaalajas kella kohandamine
RTC jaoks kasutasin DS3231 jaotusplaati, mis sisaldab EEPROM -i (minu jaoks kasutu) ja mündisuurust akut. Kuna otsustasin toita RTC -d põhiseadme aku (3v CR123) kaudu, eemaldasin mündipatarei; Energia säästmiseks eemaldasin ka EEPROM -i (lõigates selle tihvtid ettevaatlikult ära) ja rongisisese juhtme.
Mündipatarei ei olnud mulle kasulik, kuna mul ei olnud vaja reaalajas kuupäeva/tundi/minutit/sekundit salvestada, kuid RTC -l tuli loendada ainult 24 tundi ja seejärel käivitada alarm seadme sisselülitamiseks.
4. samm: muud mitmesugused pardal
Seadme sisselülitamine toimub transistori ja MosFET -ahela abil, mille käivitab RTC -häire. Kui häire on lähtestatud, katkestab vooluring seadme toite veel üheks 24 -tunniseks tsükliks. Häire saabumisel lülitab DS3231 tihvti kõrgelt madalale: normaaltingimustes on transistor küllastunud ja ühendab MosFETi värava maandamisega. Kui alarm toob transistori aluse maandusele, avaneb see ja võimaldab MosFETil vooluahela sulgeda ja ülejäänud komponentidele voolu anda.
Lisaks lisasin “test-1M” hüppaja. Selle lüliti eesmärk on - kui see on aktiveeritud - muuta tsüklit üks kord päevas kord minutis, et käivitada juurutamiskatsed. Intervalli muutmiseks ühest päevast minutiks peate esmalt sulgema hüppaja “Test-C” umbes 15 sekundiks, et mööduda kellaaja aktiveerimisperioodist ja lülitada seade sisse. Kui testid on tehtud, avage džemprid ja lähtestage seade (tsükli võimsus).
Samm: skemaatiline
6. samm: tarkvara ja loogika
Testide ajal kasutasin (praktilistel põhjustel) NodeMCU kontrollerit, nii et tarkvara hoolitseb selle eest, seades CHIP variale väärtuseks “NodeMCU” või “esp8266”.
Visand rakendab WiFiManageri teeki, et võimaldada seadmel ühendada kehtiva WiFi AP -ga juba esimesel käivitamisel. Sellisel juhul läheb seade AP -režiimi, mis võimaldab teil sellega ühenduse luua ja valida õige WiFi -võrgu, millega liituda. Pärast seda salvestatakse võrgukonfiguratsioon järgmiste tsüklite jaoks EPROM -i.
Muutuja REST_MSG sisaldab http -sõnumit, mis tuleb saata, kui andur leiab postkastist objekti. Minu puhul saadab see teate domootilisele REST -serverile, kuid saate seda oma äranägemise järgi muuta: telegrammi BOT -sõnum, IFTTT WebHooki sündmus jne.
Ülejäänud eskiis on kõik seadistamise () funktsioonis, kuna silmust ei jõuta kunagi. Pärast mitme teegi jaoks vajalike seadistuste tegemist määrab tarkvara kellaajaks 00:00:01 ja äratuseks 1 kord päevas (või üks kord minutis, kui hüpikaken „test-1M” on aktiveeritud). Seejärel teeb see meetme, saadab teate (kui postkastist leitakse mõni objekt) ja lähtestab häiretapi, lülitades seadme välja. Tsükli lõpus lülitatakse sisse ainult RTC, mis loeb 24 tundi. Hüppaja Test-1M on ühendatud ESP8266 RX-tihvtiga, mida kasutatakse GPIO-3-na, kasutades seadistust: setMode (PIN, FUNCTION_3). Seetõttu ei saa ESP8266 käitamise ajal kasutada jadamonitori: rida „#define DEBUG” (mis võimaldab kõik eskiis olevad seeriaprindid) kasutatakse ainult siis, kui ESP8266 asemel on installitud NodeMCU.
ESP8266 haldab I2C-ühendust RTC-ga ja anduriga oma tihvtide GPIO-0 ja GPIO-2 kaudu, mis on initsieeritud traaditeegis.
Täieliku koodi saab alla laadida sellelt lingilt.
Abistava tehnikavõistluse teine koht
Soovitan:
S.H.I.E.L.D - kas keegi jälgib sind?: 4 sammu (piltidega)
S.H.I.E.L.D - kas keegi jälgib sind ?: Ma nägin palju videoid piinlikest inimestest, kui nad ei märganud, et nende mikrofon või kaamera on sisse lülitatud, ja see andis mulle idee selle projekti jaoks. Kirjutasin C# -sse lihtsa rakenduse, mis tuvastab kaamera või mikrofoni kasutamise
PDF -i loomine (MIDAGI JUURDE!): 3 sammu
PDF -i loomine (millestki!): Head päeva! Niisiis, soovite luua PDF -dokumendi. Teil on saadaval mitu tarkvaravalikut. Üks levinumaid on OpenOffice.org 3.0, mis suudab eksportida PDF -vormingusse. See on hea, kui töötate dokiga
ESP Midagi: 6 sammu
ESP Midagi: Minu eesmärk on siin jagada oma kogemusi ESP8266-ga ESP-01, ESP-12 ja NodeMCU moodulite kaudu. Selgitan: ESP-01 arvutiga ühendamine2. Laadige AT püsivara uuesti3. Kiibi programmeerimiseks kasutage Arduino IDE4. Sõlme MCU kogemus5
Tee katkise mängukonsooliga midagi toredat: 6 sammu
Tee katkise mängukonsooliga midagi toredat: mõni aeg tagasi kinkis mu sõber mulle oma vana PS2, mis enam ei tööta. Kahjuks, kuna ma ei ole elektriinsener, ei saa ma konsooli parandada, kuid saan kasutada oma teadmisi RetroPie kohta täiesti uue mängusüsteemi loomiseks. (Selle õpetliku jaoks ma
Muutke üldine plastist vidin midagi ilusamaks: 14 sammu (koos piltidega)
Muutke üldine plastist vidin millekski ilusamaks: Motivatsioon: Suvel surfan või tegelen meie väikese aia/talu ümbruse projektidega. Talv on siin Bostonis käes ja ma olen valmis alustama ründamist projektide pika nimekirjaga, mille olen sisekuudeks edasi lükanud. Siiski on mul