Talaan ng mga Nilalaman:

Tide at Weather Clock: 9 Mga Hakbang (na may Mga Larawan)
Tide at Weather Clock: 9 Mga Hakbang (na may Mga Larawan)

Video: Tide at Weather Clock: 9 Mga Hakbang (na may Mga Larawan)

Video: Tide at Weather Clock: 9 Mga Hakbang (na may Mga Larawan)
Video: DR. VICKI BELO's TRANSFORMATION💖🤩#vickibelo #doctor #transformation #viral #trending 2024, Nobyembre
Anonim
Tide at Weather Clock
Tide at Weather Clock

Bagaman maaari kang bumili ng mga analog tide na orasan na may isang solong kamay na nagpapahiwatig kung ang pagtaas ng tubig ay mataas o mababa o sa isang lugar sa pagitan, ang nais ko ay isang bagay na sasabihin sa akin sa oras na magiging mababa ang pagtaas ng tubig. Nais kong isang bagay na mabilis kong masulyapan nang hindi kinakailangang buksan ito, o itulak ang anumang mga pindutan, o maghintay. At gusto ko ng isang bagay na may mahabang buhay ng baterya. Kaya gumamit ako ng isang board ng TTGO T5, na kung saan ay isang board na nakabatay sa ESP32 na may 2.13 e-paper display, na konektado sa isang TTL5110 chip. Ang TPL5110 ay binubuksan ang T5 tuwing 2.5 oras, at isang beses sa isang araw na na-download ng T5 ang laki ng data mula sa Ang NOAA at data ng panahon mula sa OpenWeatherMap, ipinapakita ang data sa e-paper, pagkatapos ay sinabi sa TPL5110 na i-off ang T5.

UPDATE (Peb 25, 2020) Ang Tide Clock ay tumatakbo sa loob ng isang taon ngayon, at ang baterya ay nasa 4.00 volts, kaya't ang orasan ay maaaring maisip na tumakbo nang maraming taon.

Hakbang 1: Listahan ng Hardware

Ang board ng TTGO T5 na $ 17

Adafruit TPL5110 board $ 5

Adafruit Perma-Proto Quarter-size board (opsyonal) $ 0.71 (minimum na order na $ 8.50)

Li-Poly na baterya na 1200 mAh $ 10 (o iba pang naaangkop na mapagkukunan ng kuryente)

JST PH 2-Pin Cable - Lalaki Header $ 0.75

220 uF capacitor

Hakbang 2: Mga tool

Panghinang

Mga striper ng wire

Ang charger ng Li-Po na baterya, tulad nito.

Hakbang 3: Magtipon ng Hardware

Magtipon ng Hardware
Magtipon ng Hardware
Magtipon ng Hardware
Magtipon ng Hardware
Magtipon ng Hardware
Magtipon ng Hardware

Ang pagtitipon ng hardware ay medyo simple tulad ng ipinapakita sa eskematiko. Gumamit ako ng isang board ng Adafruit Perma-proto na tulad ng isang normal na protoboard maliban na ito ay inilatag tulad ng isang breadboard, na may parehong mga koneksyon sa kuryente bilang isang breadboard, na maganda. Dahil kailangan ko lamang ng ilang mga koneksyon, at nais na magkasya ang buong pagpupulong sa isang maliit na kahon, pinutol ko ang isa sa mga board sa pang-apat sa isang Dremel cutoff wheel.

Napakahalaga ng 220 uF capacitor. Kung wala ito, ang TPL5110 ay hindi kailanman bubuksan ang T5. Medyo hindi malinaw kung bakit, ngunit ang ibang mga tao na gumagamit ng TPL5110 ay nagkaroon ng parehong problema. Marahil ang pagguhit ng ESP32 ay mas maraming kasalukuyang sa pagsisimula kaysa sa maaaring ibigay ng TTL5110?

Huwag hardwire ang baterya. Gamitin ang JST-PH cable upang maaari mong idiskonekta ang baterya upang singilin ito. Maaaring may isang paraan upang singilin ang baterya mula sa T5 pabalik sa pamamagitan ng TPL5110 kung ang TPL5110 ay "on", ngunit hindi ko masiguro ang diskarteng iyon.

Gumawa ako ng isang kahon na gawa sa kahoy bilang isang enclosure, ngunit ang anumang may pinakamaliit na panloob na sukat na 1.5 "x 2.75" x 1 "ay gagana.

Hakbang 4: Ibagay ang Timing

Ang board ng TPL5110 ay may isang potensyomiter ng trim na nagtatakda ng agwat ng oras kung saan gumising ang TPL5110. Gumamit ng isang maliit na distornilyador upang paikutin ito sa lahat ng paraan pakaliwa. Sa aking board, itinakda nito ang agwat sa 145 minuto, na kung saan ay talagang higit sa tinukoy na maximum na 120 minuto, ngunit ito ay gumagana at pare-pareho at makatipid ng mas maraming lakas kaysa sa paggising bawat 120 minuto, kaya ginamit ko ito. Hindi mo kailangang malaman nang tumpak ang agwat, dahil ang layunin ay i-download ang data nang halos isang beses sa isang araw nang halos 4:00. Maaari mong tukuyin ang agwat (hal., 145 minuto) at ang oras ng paggising (hal., 4am) sa env_config.h.

(Kung nais mo ng mas mahusay na kontrol ng tiyempo para sa ilang iba pang proyekto, ang board ng TPL5110 ay may bakas sa likod na maaari mong i-cut upang hindi paganahin ang potensyomiter. Pagkatapos ay ikabit mo ang isang risistor sa Delay pin, at tinutukoy ng paglaban ang agwat, ayon sa tsart na ito.)

Hakbang 5: Ang Software

Kakailanganin mo ang Arduino IDE kasama ang package na ESP32. Sa IDE, itakda ang iyong board sa "ESP32 Dev Module".

Ang sketch ay magagamit sa https://github.com/jasonful/Tides at nangangailangan ng 3 mga aklatan:

  1. "ESP8266 Weather Station", magagamit mula sa Arduino Library Manager (o dito). Kakailanganin mo lamang ang 6 na file na ito: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h at maaaring tanggalin ang natitira.
  2. Magagamit ang "Json Streaming Parser" mula sa Arduino Library Manager (o dito)
  3. https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo Kahit na ang code ay hindi nakabalot bilang isang totoong silid-aklatan, maaari mo lamang itong kopyahin sa ilalim ng direktoryo ng mga aklatan at isama ito

Hakbang 6: I-configure ang Software

Mayroong maraming mga parameter na kakailanganin mong itakda (at ilang maaaring gusto mong itakda) sa env_config.h file, kasama ang:

  • WiFi SSID at password
  • NOAA station id (sa madaling salita, nasaan ka)
  • OpenWeatherMap AppID, kung saan kakailanganin mong magparehistro (madali at libre ito)
  • OpenWeatherMap LokasyonID (muli, nasaan ka)
  • CONFIG_USE_TPL5110, na nagbibigay-daan sa iyo upang gumamit ng isang T5 nang walang TPL5110. Sa halip, papasok ang software sa deep mode ng pagtulog. Ang T5 board ay kumukuha ng halos 8 ma sa mahimbing na pagtulog, kaya aasahan ko lang na ang baterya ay tatagal ng ilang araw.

Hakbang 7: Paano Gumagana ang Software

(Maaari mong laktawan ang bahaging ito kung wala kang pakialam.)

Ang layunin ay upang gisingin isang beses sa isang araw, ngunit dahil ang maximum na agwat ng TPL5110 ay 2 oras lamang o higit pa, ang T5 ay kailangang gumising nang mas madalas. Kaya pagkatapos nitong mag-download ng data ng pagtaas ng tubig at panahon, kinakalkula nito kung ilan sa mga 2 oras na agwat na ito sa pagitan ngayon at 4:00 ng umaga bukas. Ito ay bahagyang kumplikado ng ang katunayan na ang TPL5110 ay ganap na pinuputol ang lakas sa T5, na mabuti para sa baterya, ngunit nangangahulugan ito na nawala ang RAM at ang real-time na orasan. Ito ay tulad ng paggising tuwing umaga na may amnesia. Kaya upang malaman kung anong oras na ngayon, kinukuha ito mula sa header ng HTTP ng NOAA. At upang matandaan kung gaano karaming mga 2-oras na agwat ang natitira, nagsusulat ito na kontra sa hindi pabagu-bago na imbakan (flash). Sa tuwing gigising ito, susuriin nito ang counter, babawasan ito, maiimbak ito, at kung mas malaki ito sa zero, agad itong nagpapadala ng isang senyas sa TPL51110 ("Tapos na") na sinasabi na patulahin ito. Kapag ang counter ay tumama sa zero, ang code ay nagda-download ng bagong data, at muling kinalkula at i-reset ang counter.

Hakbang 8: Patakbuhin Ito

Patakbuhin Ito
Patakbuhin Ito

Tiyaking ang switch sa kaliwang bahagi ng T5 ay nasa pataas (nasa) posisyon, i-upload ang sketch sa T5, at sa loob ng ilang segundo dapat mag-update ang screen gamit ang impormasyon ng pagtaas ng tubig at panahon.

Kung kailangan mong i-debug ang software, baguhin ang "#define DEBUG 0" sa tuktok ng Tides.ino sa "#define DEBUG 1". Bubuksan nito ang serial output ng pag-debug, at ipapakita din sa ilalim ng e-papel ang bilang ng mga restart na natitira bago ito mag-download ng bagong data, at sa oras na huling na-download ang data.

Hakbang 9: Mga Direksyon sa Hinaharap

  1. Ang paggamit ng TPL5110 na sinamahan ng isang e-paper display ay isang mahusay na paraan upang maipakita ang anumang data na hindi madalas na nagbabago, na may mahusay na buhay ng baterya.
  2. Kapag dinidisenyo ko ito, isinasaalang-alang ko ang paggamit ng TrigBoard, na isang board na ESP8266 na may board na TPL5111. Kakailanganin nito ang pagkuha ng isang hiwalay na display ng e-paper at board ng driver ng e-paper na tulad nito o nito. O isang driver + board combo na tulad nito o nito. Upang maihatid ang code sa ESP8266, sa palagay ko ang SSL code ay kailangang gumamit ng mga fingerprint sa halip na mga sertipiko, at ang hindi-pabagu-bago na imbakan na code ay kailangang gumamit ng memorya ng EEPROM o RTC.
  3. Kamakailan ko lang narinig na ang Lolin32 board ay medyo disente sa deep mode ng pagtulog: mga 100uA. Hindi kasing ganda ng board ng TPL51110 (20uA ayon sa Adafruit) ngunit sapat na mahusay.
  4. Nagbabalik ang OpenWeatherMap ng mas maraming data ng panahon kaysa sa ipinapakita ko. Kasama ang mga id ng icon, na kung saan ay mangangailangan ng paghahanap ng mga icon ng monochrome sa kung saan.

Inirerekumendang: