Мазмуну:

Толкун жана аба ырайы сааты: 9 кадам (сүрөттөр менен)
Толкун жана аба ырайы сааты: 9 кадам (сүрөттөр менен)

Video: Толкун жана аба ырайы сааты: 9 кадам (сүрөттөр менен)

Video: Толкун жана аба ырайы сааты: 9 кадам (сүрөттөр менен)
Video: Титаниктин сыры: кантип алар айсбергди байкабай калышты?! Эң деталдуу окуя! 2024, Июль
Anonim
Толкун жана аба ырайы сааты
Толкун жана аба ырайы сааты

Сиз агымдын толкуну жогору же төмөн экенин же бир жерде экенин көрсөткөн бир колу бар аналогдук сааттарды сатып алсаңыз да, мен каалаган нерсе төмөн толкун качан болорун айтып берчү. Мен күйгүзбөстөн, же эч кандай кнопканы баспай, же күтпөстөн, тез карап турган нерсени кааладым. Жана мен батарейканын иштөө мөөнөтү узун болгон нерсени кааладым. Ошентип, мен TTL5110 чипине туташкан 2.13 дюймдук электрондук дисплейи бар ESP32 негизделген TTGO T5 тактасын колдондум. TPL5110 T5ди 2,5 саат сайын күйгүзөт жана T5 күнүнө бир жолу толкундун маалыматын жүктөп турат. OpenWeatherMapтан NOAA жана аба ырайы маалыматтары электрондук кагаздагы маалыматтарды көрсөтөт, андан кийин TPL5110го T5ти өчүрүүнү айтат.

UPDATE (25 -февраль, 2020 -жыл) Tide Clock бир жылдан бери иштеп жатат, ал эми батарейкасы 4.00 вольтто, ошондуктан саат көп жылдар бою иштей алат.

1 -кадам: Аппараттык тизме

TTGO T5 тактасы $ 17

Adafruit TPL5110 тактасы $ 5

Adafruit Perma-Proto чейрек өлчөмүндөгү такта (милдеттүү эмес) $ 0.71 (минималдуу заказ $ 8.50)

Li-Poly батареясы 1200 мАч $ 10 (же башка тиешелүү энергия булагы)

JST PH 2-пин Cable-Эркек баш $ 0.75

220 uF конденсатор

2 -кадам: Куралдар

Кандооч

Сым тазалагычтар

Li-Po батареяны заряддагыч түзүлүш, мисалы.

3 -кадам: Аппараттык жабдууларды чогултуу

Аппараттык жабдууларды чогултуу
Аппараттык жабдууларды чогултуу
Аппараттык жабдууларды чогултуу
Аппараттык жабдууларды чогултуу
Аппараттык жабдууларды чогултуу
Аппараттык жабдууларды чогултуу

Аппаратты чогултуу схемада көрсөтүлгөндөй абдан жөнөкөй. Мен Adafruit Perma-прото тактасын колдондум, ал кадимки протобоардга окшош, бирок ал нандын тактайындай эле, электрдик туташуусу нан менен бирдей, бул жагымдуу. Мага бир нече байланыш гана керек болгондуктан жана бүтүндөй жыйынды кичинекей кутуга салгым келгендиктен, тактайлардын бирин Dremel кесүүчү дөңгөлөгү менен төртүнчү бөлүккө бөлдүм.

220 uF конденсатору абдан маанилүү. Ансыз TPL5110 эч качан T5ти күйгүзбөйт. Эмнеге экенин бир аз түшүнүксүз, бирок TPL5110 колдонгон башка адамдарда ушундай көйгөй болгон. Балким, ESP32 TTL5110 менен камсыз кыла алгандан көбүрөөк ишке кирет?

Батарейканы катуу тартпаңыз. JST-PH кабелин колдонуңуз, ошондуктан батареяны заряддоо үчүн ажыратып коюңуз. Эгерде TPL5110 "күйүк" болсо, батареяны T5тен TPL5110 аркылуу кайра заряддоонун бир жолу болушу мүмкүн, бирок мен бул техникага кепилдик бере албайм.

Мен жыгач кутуну корпус катары жасадым, бирок ички өлчөмү 1,5 "x 2,75" x 1 "болгон нерселер иштейт.

4 -кадам: Убакытты тууралаңыз

TPL5110 тактасында TPL5110 ойгонуучу убакыт аралыгын орнотуучу трим потенциометр бар. Муну кичине отвертка менен сааттын жебесине каршы буруңуз. Менин тактайымда, бул интервалды 145 мүнөткө койду, бул чындыгында 120 мүнөттөн ашпайт, бирок ал иштейт жана ырааттуу жана 120 мүнөт сайын ойгонгондон да көбүрөөк энергияны үнөмдөйт, ошондуктан мен аны колдондум. Сиз интервалды так билүүнүн кажети жок, анткени максаты болжол менен бир күндө болжол менен бир жолу жүктөө, болжол менен таңкы саат 4 чамасында. Сиз env_config.h ичинде интервалды (мис., 145 мүнөт) жана ойгонуу убактысын (мис., 4am) көрсөтө аласыз.

(Эгерде сиз башка долбоордун убактысын жакшыраак көзөмөлдөөнү кааласаңыз, TPL5110 тактайынын артында изи бар, сиз потенциометрди өчүрүү үчүн кесе аласыз. Андан кийин сиз кечигүү пинине каршылыкты тиркеп койсоңуз, каршылык интервалды аныктайт) бул диаграмма.)

5 -кадам: Программалык камсыздоо

Сизге ESP32 пакети менен Arduino IDE керек болот. IDEде тактаңызды "ESP32 Dev Module" деп коюңуз.

Эскиз https://github.com/jasonful/Tides дарегинде жеткиликтүү жана 3 китепкананы талап кылат:

  1. "ESP8266 Аба ырайы бекети", Arduino китепканасынын менеджеринен жеткиликтүү (же бул жерде). Сизге бул 6 файл гана керек болот: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h жана калганын өчүрө аласыз.
  2. "Json Streaming Parser" Arduino Китепкана Менеджеринен жеткиликтүү (же бул жерде)
  3. https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo Код чыныгы китепкана катары таңгакталбаса да, сиз аны китепканаларыңыздын каталогуна көчүрүп, кошо аласыз ал

6 -кадам: Программаны конфигурациялоо

Env_config.h файлында сиз орнотушуңуз керек болгон бир нече параметрлер бар (жана сиз каалагандай бир нече), анын ичинде:

  • WiFi SSID жана сырсөз
  • NOAA станциясынын id (башкача айтканда, сиз кайдасыз)
  • OpenWeatherMap AppID, сизге катталуу керек (бул оңой жана бекер)
  • OpenWeatherMap LocationID (дагы кайдасыз)
  • CONFIG_USE_TPL5110, бул T55ти TPL5110суз колдонууга мүмкүндүк берет. Анын ордуна, программа терең уйку режимине кирет. T5 тактайы терең уйкуда 8 маалга жакын тартат, ошондуктан батарейканын бир нече күнгө жетээрин күтөм.

7 -кадам: Программалык камсыздоо кантип иштейт

(Сизге кызык болбосо, бул бөлүктү өткөрүп жиберсеңиз болот.)

Максат - күнүнө бир жолу ойгонуу, бирок TPL5110дун максималдуу аралыгы 2 саатка жакын болгондуктан, T5 тез -тез ойгонушу керек. Ошентип, ал толкун жана аба ырайы жөнүндө маалыматтарды жүктөп алгандан кийин, ушул 2 саат аралыктын канчасы азыр жана эртең мененки 4: 00гө чейин эсептейт. Бул бир аз татаалдашкан, анткени TPL5110 батарейка үчүн жакшы болгон T5тин энергиясын толугу менен кыскартат, бирок биз RAMди жана реалдуу убакытты жоготобуз. Бул күн сайын эртең менен амнезия менен ойгонуу сыяктуу. Ошентип, азыр саат канча экенин билүү үчүн, аны NOAAнын HTTP башынан чыгарып алат. Жана канча 2 сааттык интервал калганын эстеп калуу үчүн, ал туруксуз сактоого каршы (флеш) деп жазат. Ар бир ойгонгондо ал эсептегичти текшерет, азайтат, сактайт жана эгер нөлдөн чоң болсо, дароо TPL51110го ("Бүттү") аны уктатуу үчүн сигнал жөнөтөт. Эсептегич нөлгө жеткенде, код жаңы маалыматтарды жүктөп, эсептегичти кайра эсептеп, баштапкы абалга келтирет.

8 -кадам: Аны иштетүү

Run It
Run It

T5тин сол жагындагы которгуч өйдө (күйгүзүлгөн) абалда экенин текшериңиз, эскизди T5ке жүктөңүз жана бир нече секунданын ичинде экран толкун жана аба ырайы тууралуу маалымат менен жаңыртылышы керек.

Эгерде сизге программалык камсыздоону мүчүлүштүктөрдү оңдоо керек болсо, Tides.ino'нун үстүндөгү "#define DEBUG 0" "#DEFINE DEBUG 1" деп өзгөртүңүз. Бул сериялык мүчүлүштүктөрдү чыгарууну күйгүзөт, ошондой эле электрондук кагаздын түбүндө жаңы маалыматтарды жүктөө алдында калган өчүрүүлөрдүн санын жана маалыматтарды акыркы жолу түшүргөн убактысын көрсөтөт.

9 -кадам: Келечектеги багыттар

  1. Электрондук кагаз дисплейи менен айкалышкан TPL5110дун колдонулушу батарейканын мыкты иштөө мөөнөтү менен көп учурда өзгөрбөгөн маалыматтарды көрсөтүүнүн эң сонун жолу.
  2. Мен муну иштеп жатканда, мен TPG5111 бортунда ESP8266 тактасы болгон TrigBoard колдонууну ойлодум. Бул үчүн өзүнчө электрондук кагаз дисплейи жана электрондук кагаз айдоочу тактасын алуу керек болмок. Же айдоочу+такта комбинациясы тигил же бул. Кодду ESP8266га өткөрүп берүү үчүн, менимче, SSL коду сертификаттардын ордуна манжа издерин колдонушу керек, ал эми туруксуз сактоо коду EEPROM же RTC эс тутумун колдонушу керек.
  3. Жакында Lolin32 тактайы терең уйку режиминде абдан татыктуу экенин уктум: болжол менен 100uA. TPL51110 тактайындай жакшы эмес (Aufruit боюнча 20uA), бирок жетиштүү.
  4. OpenWeatherMap мен көрсөткөнгө караганда аба ырайы жөнүндө көбүрөөк маалыматты кайтарат. Монохромдук иконкаларды бир жерден табууну талап кылган сөлөкөт идентификаторлорун кошкондо.

Сунушталууда: