Satura rādītājs:
- 1. darbība: aparatūras saraksts
- 2. darbība: rīki
- 3. solis: salieciet aparatūru
- 4. solis: noregulējiet laiku
- 5. solis: programmatūra
- 6. darbība: konfigurējiet programmatūru
- 7. darbība. Kā darbojas programmatūra
- 8. darbība: palaidiet to
- 9. solis: turpmākie virzieni
Video: Plūdmaiņu un laika pulkstenis: 9 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Lai gan jūs varat iegādāties analogus plūdmaiņu pulksteņus ar vienu roku, kas norāda, vai plūdmaiņa ir augsta vai zema, vai kaut kur pa vidu, tas, ko es gribēju, man pateiks, kad būs plūdmaiņa. Es gribēju kaut ko, uz ko varētu ātri paskatīties, to neieslēdzot, nenospiežot pogas vai negaidot. Un es gribēju kaut ko ar ilgu akumulatora darbības laiku. Tāpēc es izmantoju TTGO T5 plati, kas ir uz ESP32 balstīta tāfele ar 2,13 collu e-papīra displeju, savienota ar TTL5110 mikroshēmu. TPL5110 ieslēdz T5 ik pēc 2,5 stundām, un reizi dienā T5 lejupielādē plūdmaiņu datus no NOAA un laika apstākļu dati no OpenWeatherMap, parāda datus uz e-papīra, pēc tam liek TPL5110 izslēgt T5.
ATJAUNINĀT (2020. gada 25. februārī) Plūdmaiņu pulkstenis darbojas jau vienu gadu, un akumulatora jauda ir 4,00 volti, tāpēc pulkstenis varētu darboties daudzus gadus.
1. darbība: aparatūras saraksts
TTGO T5 dēlis 17 ASV dolāri
Adafruit TPL5110 dēlis 5 ASV dolāri
Adafruit Perma-Proto ceturkšņa izmēra tāfele (pēc izvēles) 0,71 USD (minimālais pasūtījums 8,50 USD)
Li-Poly akumulators 1200 mAh 10 USD (vai cits piemērots barošanas avots)
JST PH 2 kontaktu kabelis-vīriešu galvene 0,75 ASV dolāri
220 uF kondensators
2. darbība: rīki
Lodāmurs
Stiepļu noņēmēji
Li-Po akumulatora lādētājs, piemēram, šis.
3. solis: salieciet aparatūru
Aparatūras salikšana ir diezgan vienkārša, kā redzams shematiski. Es izmantoju Adafruit Perma-proto dēli, kas ir kā parasts protoboards, izņemot to, ka tas ir izkārtots kā maizes dēlis ar tādiem pašiem elektriskiem savienojumiem kā maizes dēlis, kas ir jauki. Tā kā man bija nepieciešami tikai daži savienojumi un es gribēju visu komplektu ievietot nelielā kastē, es vienu no dēļiem sagriezu ceturtdaļās ar Dremel griešanas riteni.
220 uF kondensators ir ļoti svarīgs. Bez tā TPL5110 nekad neieslēgs T5. Mazliet nav skaidrs, kāpēc, bet citiem cilvēkiem, kuri izmantoja TPL5110, ir bijusi tāda pati problēma. Varbūt palaišanas laikā ESP32 patērē lielāku strāvu, nekā spēj nodrošināt TTL5110?
Nelietojiet vadu ar akumulatoru. Izmantojiet JST-PH kabeli, lai varētu atvienot akumulatoru, lai to uzlādētu. Var būt veids, kā uzlādēt akumulatoru no T5 atpakaļ caur TPL5110, ja TPL5110 ir ieslēgts, taču es nevaru garantēt šo tehniku.
Es izveidoju koka kasti kā korpusu, taču derētu viss, kura minimālie iekšējie izmēri ir 1,5 "x 2,75" x 1 ".
4. solis: noregulējiet laiku
TPL5110 plāksnei ir apdares potenciometrs, kas nosaka laika intervālu, kurā TPL5110 pamostas. Izmantojiet mazu skrūvgriezi, lai to pagrieztu līdz galam pretēji pulksteņrādītāja virzienam. Uz manas tāfeles šis intervāls tika iestatīts uz 145 minūtēm, kas patiesībā ir vairāk nekā maksimālais paredzētais 120 minūtes, taču tas darbojas un bija konsekvents un ietaupīs vēl vairāk enerģijas nekā ik pēc 120 minūtēm, tāpēc es to izmantoju. Jums nav precīzi jāzina intervāls, jo mērķis ir tikai aptuveni reizi dienā aptuveni 4:00 lejupielādēt datus. Vietnē env_config.h varat norādīt intervālu (piemēram, 145 minūtes) un modināšanas laiku (piemēram, 4:00).
(Ja vēlaties labāk kontrolēt cita projekta laiku, TPL5110 plāksnes aizmugurē ir pēdas, kuras varat izgriezt, lai atspējotu potenciometru. Pēc tam jūs pievienojat rezistoru aiztures tapai, un pretestība nosaka intervālu atbilstoši šo diagrammu.)
5. solis: programmatūra
Jums būs nepieciešams Arduino IDE ar ESP32 paketi. IDE iestatiet tāfeli uz "ESP32 Dev Module".
Skice ir pieejama vietnē https://github.com/jasonful/Tides, un tai ir nepieciešamas 3 bibliotēkas:
- "ESP8266 meteoroloģiskā stacija", kas pieejama no Arduino bibliotēkas vadītāja (vai šeit). Jums būs nepieciešami tikai šie 6 faili: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h un pārējos var izdzēst.
- "Json straumēšanas parsētājs" ir pieejams Arduino bibliotēkas pārvaldniekā (vai šeit)
- https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo Lai gan kods nav iepakots kā īsta bibliotēka, varat to vienkārši nokopēt savā bibliotēku direktorijā un iekļaut to.
6. darbība: konfigurējiet programmatūru
Failā env_config.h jums būs jāiestata vairāki parametri (un daži, iespējams, vēlēsities tos iestatīt), tostarp:
- WiFi SSID un parole
- NOAA stacijas ID (citiem vārdiem sakot, kur jūs esat)
- OpenWeatherMap AppID, kuram jums būs jāreģistrējas (tas ir viegli un bez maksas)
- OpenWeatherMap LocationID (atkal, kur tu esi)
- CONFIG_USE_TPL5110, kas ļauj izmantot T5 bez TPL5110. Tā vietā programmatūra ieslēgsies dziļā miega režīmā. T5 dēlis dziļā miegā patērē apmēram 8 ma, tāpēc es gaidītu, ka akumulators ilgs tikai dažas dienas.
7. darbība. Kā darbojas programmatūra
(Ja vienalga, varat šo daļu izlaist.)
Mērķis ir pamosties vienu reizi dienā, bet, tā kā maksimālais TPL5110 intervāls ir tikai aptuveni 2 stundas, T5 ir jāceļas biežāk. Tātad, pēc tam, kad tas ir lejupielādējis plūdmaiņu un laika apstākļu datus, tas aprēķina, cik no šiem 2 stundu intervāliem ir no šodienas līdz rīt no rīta 4:00. To nedaudz sarežģī fakts, ka TPL5110 pilnībā pārtrauc T5 strāvu, kas nāk par labu akumulatoram, taču tas nozīmē, ka mēs zaudējam RAM un reālā laika pulksteni. Tas ir tāpat kā katru rītu pamosties ar amnēziju. Tātad, lai noskaidrotu, cik ir pulkstenis, tas to iegūst no NOAA HTTP galvenes. Un, lai atcerētos, cik daudz 2 stundu intervālu ir atlicis, tas raksta, ka tas ir pretrunā nepastāvīgai uzglabāšanai (zibspuldze). Katru reizi, kad tas pamostas, tas pārbauda skaitītāju, samazina to, saglabā to un, ja tas ir lielāks par nulli, tas nekavējoties nosūta signālu uz TPL51110 ("Gatavs"), liekot to iemidzināt. Kad skaitītājs sasniedz nulli, kods lejupielādē jaunus datus, pārrēķina un atiestata skaitītāju.
8. darbība: palaidiet to
Pārliecinieties, vai slēdzis T5 kreisajā pusē ir augšējā (ieslēgtā) pozīcijā, augšupielādējiet skici T5, un dažu sekunžu laikā ekrānam vajadzētu atjaunoties ar informāciju par plūdmaiņu un laika apstākļiem.
Ja nepieciešams atkļūdot programmatūru, mainiet "#define DEBUG 0" Tides.ino augšdaļā uz "#define DEBUG 1". Tas ieslēgs sērijas atkļūdošanas izvadi, kā arī e-papīra apakšdaļā parādīs atlikušo restartēšanas reižu skaitu pirms jaunu datu lejupielādes un laiku, kad tas pēdējo reizi lejupielādēja datus.
9. solis: turpmākie virzieni
- TPL5110 izmantošana kopā ar e-papīra displeju ir lielisks veids, kā parādīt visus datus, kas bieži nemainās, ar lielisku akumulatora darbības laiku.
- Izstrādājot to, es apsvēru iespēju izmantot TrigBoard, kas ir ESP8266 plāksne ar TPL5111. Būtu bijis jāiegūst atsevišķs e-papīra displejs un e-papīra draivera tāfele. Vai šofera+tāfeles kombinācija kā šis vai šis. Lai kodu pārnestu uz ESP8266, es domāju, ka SSL kodam sertifikātu vietā būs jāizmanto pirkstu nospiedumi, un nemainīgajam krātuves kodam būs jāizmanto EEPROM vai RTC atmiņa.
- Nesen dzirdēju, ka Lolin32 tāfele dziļā miega režīmā ir diezgan pieklājīga: aptuveni 100uA. Ne tik laba kā TPL51110 tāfele (20uA saskaņā ar Adafruit), bet pietiekami laba.
- OpenWeatherMap atgriež daudz vairāk laika apstākļu datu, nekā es parādīju. Ieskaitot ikonu ID, kas prasītu kaut kur atrast vienkrāsainas ikonas.
Ieteicams:
Tīkla laika digitālais pulkstenis, izmantojot ESP8266: 4 soļi (ar attēliem)
Tīkla laika digitālais pulkstenis, izmantojot ESP8266: Mēs uzzinām, kā izveidot jauku mazu ciparu pulksteni, kas sazinās ar NTP serveriem un parāda tīkla vai interneta laiku. Mēs izmantojam WeMos D1 mini, lai izveidotu savienojumu ar WiFi tīklu, iegūtu NTP laiku un parādītu to OLED modulī. Iepriekš redzamais video
WiFi pulkstenis, taimeris un laika stacija, kontrolēta Blynk: 5 soļi (ar attēliem)
WiFi pulkstenis, taimeris un laika stacija, kontrolēts Blynk: Šis ir Morphing digitālais pulkstenis (pateicoties Hari Wiguna par koncepciju un morfēšanas kodu), tas ir arī analogs pulkstenis, laika ziņošanas stacija un virtuves taimeris. To pilnībā kontrolē Blynk lietotne viedtālrunī, izmantojot WiFi. Lietotne ļauj
Laika stacija ar Arduino, BME280 un displeju, lai redzētu tendenci pēdējo 1-2 dienu laikā: 3 soļi (ar attēliem)
Laika stacijas ar Arduino, BME280 un displeju, lai redzētu tendenci pēdējo 1-2 dienu laikā: Sveiki! Šeit ir norādījumi par laika apstākļiem, kas jau ir ieviesti. Tie parāda pašreizējo gaisa spiedienu, temperatūru un mitrumu. Līdz šim viņiem trūka kursa prezentācijas pēdējo 1-2 dienu laikā. Šim procesam būtu
Mazs mēness plūdmaiņu pulkstenis: 5 soļi (ar attēliem)
Tiny Moon Tide Clock: Šis ir projekts, kas tiek veikts kopā ar Aļaskas SeaLife centru. Viņi bija ieinteresēti ar jūru saistītā projektā, kas iesaistītu viņu skolēnus okeāna vides elektroniskajā būvniecībā un uzraudzībā. Dizains ir salīdzinoši lēts uzbūvēt
Plūdmaiņu pulksteņa galerija: 6 soļi (ar attēliem)
Plūdmaiņu pulksteņu galerija: šī nelielā pašpietiekamā fotoattēlu galerija, kas raksturo plūdmaiņu laiku, ir jauks projekts vasarai. Plūdmaiņu prognožu princips ar mikrokontrolleru ir balstīts uz Lūka Millera darbu, kurš izveidoja datu struktūru un vienkāršu kodu