Turinys:
- 1 žingsnis: Aparatūros sąrašas
- 2 žingsnis: įrankiai
- 3 žingsnis: Surinkite aparatūrą
- 4 žingsnis: sureguliuokite laiką
- 5 žingsnis: programinė įranga
- 6 veiksmas: sukonfigūruokite programinę įrangą
- 7 veiksmas: kaip veikia programinė įranga
- 8 žingsnis: paleiskite
- 9 žingsnis: ateities kryptys
Video: Potvynių ir orų laikrodis: 9 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Nors galite nusipirkti analogiškų laikrodžių, turinčių vieną ranką, rodančią, ar atoslūgis yra aukštas, ar žemas, ar kažkur tarp jų, tai, ko norėjau, man pasakytų, kada bus atoslūgis. Norėjau kažko, į ką galėčiau greitai pažvelgti, jo neįjungęs, nespaudęs jokių mygtukų ar laukdamas. Ir aš norėjau kažko ilgo baterijos. Taigi aš naudoju TTGO T5 plokštę, kuri yra ESP32 pagrindu pagaminta plokštė su 2,13 colio el. Popieriaus ekranu, prijungta prie TTL5110 lusto. TPL5110 įjungia T5 kas 2,5 valandos, o kartą per dieną T5 atsisiunčia potvynių duomenis iš NOAA ir orų duomenys iš „OpenWeatherMap“, rodo duomenis el. Popieriuje, tada liepia TPL5110 išjungti T5.
ATNAUJINIMAS (2020 m. Vasario 25 d.) „Tide Clock“veikia jau vienerius metus, o baterija yra 4,00 voltų, todėl laikrodis gali veikti daugelį metų.
1 žingsnis: Aparatūros sąrašas
TTGO T5 lenta 17 USD
„Adafruit TPL5110“lenta 5 USD
„Adafruit Perma-Proto“ketvirčio dydžio lenta (neprivaloma) 0,71 USD (minimalus užsakymas 8,50 USD)
Li-Poly baterija 1200 mAh 10 USD (arba kitas tinkamas maitinimo šaltinis)
JST PH 2 kontaktų kabelis-vyrų antraštė 0,75 USD
220 uF kondensatorius
2 žingsnis: įrankiai
Lituoklis
Vielos nuėmikliai
Li-Po akumuliatoriaus įkroviklis, toks kaip šis.
3 žingsnis: Surinkite aparatūrą
Techninės įrangos surinkimas yra gana paprastas, kaip parodyta schemoje. Aš naudoju „Adafruit Perma-proto“plokštę, kuri yra kaip įprasta protoboard, išskyrus tai, kad ji yra išdėstyta kaip duonos lenta, su tokiomis pačiomis elektros jungtimis kaip ir duonos lenta, o tai yra puiku. Kadangi man reikėjo tik kelių jungčių ir norėjau visą mazgą sutalpinti į mažą dėžutę, vieną iš lentų supjaustiau į ketvirtas su „Dremel“išjungimo ratu.
220 uF kondensatorius yra labai svarbus. Be jo TPL5110 niekada neįjungs T5. Šiek tiek neaišku, kodėl, tačiau kiti žmonės, naudojantys TPL5110, turėjo tą pačią problemą. Galbūt ESP32 paleidžia daugiau srovės, nei paleidžia TTL5110?
Nejunkite akumuliatoriaus. Naudokite JST-PH kabelį, kad galėtumėte atjungti akumuliatorių ir jį įkrauti. Gali būti būdas įkrauti akumuliatorių iš T5 atgal per TPL5110, jei TPL5110 yra „įjungtas“, bet aš negaliu garantuoti šios technikos.
Aš padariau medinę dėžę kaip aptvarą, bet viskas, kurios minimalūs vidiniai matmenys yra 1,5 x 2,75 colio x 1, tiktų.
4 žingsnis: sureguliuokite laiką
TPL5110 plokštėje yra apdailos potenciometras, kuris nustato laiko intervalą, per kurį TPL5110 atsibunda. Naudokite mažą atsuktuvą, kad visa tai pasuktumėte prieš laikrodžio rodyklę. Mano lentoje šis intervalas buvo nustatytas į 145 minutes, o tai iš tikrųjų yra daugiau nei nurodyta maksimali 120 minučių, tačiau ji veikia ir buvo nuosekli ir sutaupys dar daugiau energijos nei pabudus kas 120 minučių, todėl aš ją panaudojau. Jums nereikia tiksliai žinoti intervalo, nes tikslas yra tiesiog atsisiųsti duomenis maždaug kartą per dieną, maždaug apie 4 val. „Env_config.h“galite nurodyti intervalą (pvz., 145 minutes) ir pažadinimo laiką (pvz., 4 val.).
(Jei norite geriau valdyti kito projekto laiką, TPL5110 plokštės gale yra pėdsakas, kurį galite nupjauti, kad išjungtumėte potenciometrą. Tada prie uždelsimo kaiščio pritvirtinate rezistorių, o varža nustato intervalą pagal šią diagramą.)
5 žingsnis: programinė įranga
Jums reikės „Arduino IDE“su ESP32 paketu. IDE nustatykite plokštę į „ESP32 Dev Module“.
Eskizą galima rasti adresu https://github.com/jasonful/Tides ir jam reikalingos 3 bibliotekos:
- „ESP8266 Weather Station“, kurią galima įsigyti iš „Arduino“bibliotekos vadovo (arba čia). Jums reikės tik šių 6 failų: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h ir likusius ištrinti.
- „Json Streaming Parser“galima įsigyti iš „Arduino“bibliotekos vadovo (arba čia)
- https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo Nors kodas nėra supakuotas kaip tikra biblioteka, galite tiesiog nukopijuoti jį į savo bibliotekų katalogą ir įtraukti tai.
6 veiksmas: sukonfigūruokite programinę įrangą
Faile „env_config.h“turėsite nustatyti kelis parametrus (ir kelis, kuriuos galbūt norėsite nustatyti), įskaitant:
- „WiFi“SSID ir slaptažodis
- NOAA stoties ID (kitaip tariant, kur esate)
- „OpenWeatherMap AppID“, kurį turėsite užsiregistruoti (tai paprasta ir nemokama)
- „OpenWeatherMap LocationID“(vėlgi, kur esate)
- CONFIG_USE_TPL5110, kuris leidžia naudoti T5 be TPL5110. Vietoj to programinė įranga pereis į gilaus miego režimą. T5 plokštė giliai miegant pritraukia apie 8 mA, todėl tikėjausi, kad baterija truks kelias dienas.
7 veiksmas: kaip veikia programinė įranga
(Jei nerūpi, galite praleisti šią dalį.)
Tikslas yra pabusti kartą per dieną, tačiau kadangi maksimalus TPL5110 intervalas yra tik 2 valandos, T5 turi pabusti dažniau. Taigi, atsisiųsdamas potvynių ir orų duomenis, jis apskaičiuoja, kiek iš šių 2 valandų intervalų yra nuo dabar iki rytoj ryto 4 val. Tai šiek tiek apsunkina tai, kad TPL5110 visiškai nutraukia T5 maitinimą, o tai yra naudinga akumuliatoriui, tačiau tai reiškia, kad prarandame RAM ir realaus laiko laikrodį. Tai tarsi kas rytą pabudus su amnezija. Taigi, norėdamas išsiaiškinti, kiek dabar yra laiko, jis ištraukia jį iš NOAA HTTP antraštės. Ir prisiminti, kiek liko 2 valandų intervalai, jis rašo, kad prieštarauja nepastoviam saugojimui (blykstė). Kaskart pabudęs jis tikrina, kad skaitiklis sumažina, saugo ir, jei jis didesnis nei nulis, nedelsdamas siunčia signalą į TPL51110 („Atlikta“), nurodydamas jį užmigdyti. Kai skaitiklis pasiekia nulį, kodas atsisiunčia naujus duomenis, perskaičiuoja ir iš naujo nustato skaitiklį.
8 žingsnis: paleiskite
Įsitikinkite, kad kairėje T5 pusėje esantis jungiklis yra aukštyn (įjungta), įkelkite eskizą į T5 ir per kelias sekundes ekranas turėtų atnaujinti informaciją apie potvynius ir orus.
Jei reikia derinti programinę įrangą, pakeiskite „#define DEBUG 0“Tides.ino viršuje į „#define DEBUG 1“. Tai įjungs serijinio derinimo išvestį ir elektroninio popieriaus apačioje parodys, kiek kartų buvo paleista iš naujo prieš atsisiunčiant naujus duomenis ir paskutinį kartą atsisiuntus duomenis.
9 žingsnis: ateities kryptys
- Naudojant „TPL5110“kartu su el. Popieriniu ekranu yra puikus būdas rodyti bet kokius duomenis, kurie dažnai nesikeičia, ir puikiai veikia baterija.
- Kai kuriau tai, galvojau naudoti „TrigBoard“, tai yra ESP8266 plokštė su TPL5111. Reikėjo įsigyti atskirą elektroninio popieriaus ekraną ir elektroninio popieriaus tvarkyklės plokštę, tokią ar tokią. Arba vairuotojo+lentos derinys kaip šis ar šis. Kad perkeltumėte kodą į ESP8266, manau, kad SSL kodas turės naudoti pirštų atspaudus, o ne sertifikatus, o nepastovus saugojimo kodas turės naudoti EEPROM arba RTC atmintį.
- Neseniai išgirdau, kad „Lolin32“plokštė yra gana padori gilaus miego režimu: apie 100uA. Ne tokia gera kaip TPL51110 plokštė (20uA pagal „Adafruit“), bet pakankamai gera.
- „OpenWeatherMap“pateikia daug daugiau orų duomenų, nei aš rodau. Įskaitant piktogramų ID, todėl reikės kažkur rasti nespalvotų piktogramų.
Rekomenduojamas:
„WiFi“laikrodis, laikmatis ir orų stotis, valdomas „Blynk“: 5 žingsniai (su nuotraukomis)
„WiFi“laikrodis, laikmatis ir orų stotis, valdomas „Blynk“: tai yra „Morphing“skaitmeninis laikrodis (ačiū Hari Wiguna už koncepciją ir morfavimo kodą), taip pat yra analoginis laikrodis, orų pranešimų stotis ir virtuvės laikmatis. Jį valdo visiškai „Blynk“programa išmaniajame telefone naudojant „WiFi“. Programa leidžia
Pagrobkite RGB potvynių šviesą su „Arduino“arba ESP8266: 6 žingsniai (su nuotraukomis)
Pagrobkite RGB potvynių šviesą naudodami „Arduino“arba ESP8266: Taigi „Amazon“radau puikių mažų RGB prožektorių ir, pažvelgęs į jų vidų, supratau, kad galite juos prijungti tiesiai prie arduino ir esp8266 ir valdyti juos naudodami PWM. dabar naudok du iš jų mano kambaryje kaip akcento šviesą
RPi orų stotis ir skaitmeninis laikrodis: 4 žingsniai (su nuotraukomis)
RPi orų stotis ir skaitmeninis laikrodis: tai greitas ir paprastas projektas, kurį galima lengvai parodyti. Tai rodo laiką, oro sąlygas ir temperatūrą. Ir jei jums patinka tai, ką matote, sekite mane „Instagram“ir „Twitter“(@Anders644PI), kad neatsiliktumėte nuo to, ką darau
ESP8266 orų laikrodis: 6 žingsniai (su nuotraukomis)
ESP8266 Oro laikrodis: Aš labai didžiuojuosi jūsų atvykimu ir sveikinu jus
ESP8266 pagrįstas tinklo laikrodis ir orų monitorius: 3 žingsniai (su nuotraukomis)
ESP8266 pagrįstas tinklo laikrodis ir orų monitorius: trumpas ir paprastas savaitgalio projektas su ESP8266 ir 0,96 colio 128x64 OLED ekranu. Įrenginys yra tinklo laikrodis, ty nuskaito laiką iš ntp serverių. Jame taip pat rodoma orų informacija su piktogramomis iš openweathermap.org Būtinos dalys: 1. ESP8266 modulis (A