Talaan ng mga Nilalaman:

Oras ng Weather Station ng ESP8266: 4 na Hakbang
Oras ng Weather Station ng ESP8266: 4 na Hakbang

Video: Oras ng Weather Station ng ESP8266: 4 na Hakbang

Video: Oras ng Weather Station ng ESP8266: 4 na Hakbang
Video: FIRST BORN BABY NILA JULIA AT COCO MARTIN NA SI BABY MARTINA LOOKALIKE NG DADDY COCO #juliamontes 2024, Nobyembre
Anonim
Oras ng Weather Station ng ESP8266
Oras ng Weather Station ng ESP8266

Ang proyektong ito ay isang magandang paraan ng pagpapakita ng oras at panahon sa isang maliit na maginhawang package. Ipapaliwanag ko ang proyekto, kung paano ito gumagana at ipakita ang code dito.

Maaari mong pindutin ang iba't ibang mga pindutan upang ipakita ang kasalukuyang panahon sa isang itinakdang lokasyon pati na rin ang temperatura at presyon. Ang default na pagtingin ay ang oras kung saan hinugot mula sa isang NTP server.

Hindi na kailangang itakda ang oras dahil ang oras ay na-synchronize mula sa NTP server at napaka-tumpak. Sa pagsasaayos na ito mayroon akong oras at ang lokal na IP address. Maaari mong baguhin ang code upang isama ang petsa, panahon, presyon at temperatura upang ipakita sa pangunahing screen o sa mga pindutan.

Hakbang 1: Ang Iskematika

Ang Iskolar
Ang Iskolar
Ang Iskolar
Ang Iskolar

Ang eskematiko ay medyo prangka at madaling gawin

sundan Mayroong isang gerber file kung nais mong paikutin ang iyong sariling PCB. Ang buong circuit ay hinihimok ng 5V na nagmumula sa isang koneksyon ng micro USB. Ginagawa nitong simple at madali ang kuryente. Ang 5V ay pinakain sa isang Mababang Dropout 3.3V Regulator isang LM 3940 na nagbibigay sa 3.3V sa ESP8266. Mayroong isang USB konektor sa ESP8266 subalit, pinili kong hindi gamitin ito sa pangkalahatan dahil ang 5V ay nagtutulak din ng LCD.

Kailangang gamitin ang 3.3V sa ESP8266, hindi mo ito direktang maitutulak sa 5V dahil papatayin nito ang board.

Ang dalawang switch ng pandamdam ay konektado sa D5 at D6 at naka-configure sa code upang ilabas ang iba't ibang impormasyon sa screen. Nakatakda ang mga ito sa Temperatura / Presyon at Pagtataya.

Ang lahat ng mga sangkap ay madaling solder sa perfboard o ang gerber ay magagamit sa aking GitHub sa

Hakbang 2: Ang Code

github.com/allenelectronics/esp8266weatherstation

Ang code ay naipon sa Arduino IDE at nangangailangan ng ilang pagsasaayos upang gumana

Una, kailangan mong i-install ang Lupon ng ESP8266 sa IDE upang mai-upload ang code dito.

Ang mga kumpletong tagubilin sa kung paano ito gawin ay narito:

Upang makuha ang pagpapaandar ng panahon, pinili kong gamitin ang RemoteMe na nangongolekta ng data ng panahon na direkta mula sa API at bumubuo ng code na maaaring mailagay sa iyong code. Kakailanganin mong magparehistro at i-set up ang data stream sa kanilang website:

Ang dokumentasyon tungkol sa RemoteMe ay matatagpuan dito:

Mayroong ilang mga tukoy na kahulugan na natatangi sa iyong pag-set up na kakailanganin mong kumpletuhin bago i-upload:

#define WIFI_NAME "SSID GOES DITO"

#define WIFI_PASSWORD "PASSWORD GOES DITO"

# tukuyin ang DEVICE_ID 1

# tukuyin ang DEVICE_NAME "KUMUHA MULA SA REMOTEME. ORG"

# tukuyin ang TOKEN "KUMUHA MULA SA REMOTEME. ORG"

Ang mga kahulugan dito ay kailangang itakda mo batay sa iyong mga detalye sa wifi at ang token na nakukuha mo mula sa RemoteMe.

Kailangan mong tiyakin na ang lahat ng mga aklatan na ito ay na-install at kasama sa code. Nagsama ako ng mga link sa mga mas mahirap makuha.

#include //https://github.com/remoteme/RemoteMeArduinoLibrary

# isama

# isama

# isama

# isama

Ang huling bahagi na nangangailangan ng pagbabago ay ang iyong lokasyon dahil ang proyektong ito ay hindi gumagamit ng GPS. Kailangan mong baguhin ang string na "LOCATION":

kung hindi man (buttonState2 == LOW && prev ButtonState2 == MATAAS) {

Serial.print ("LOCATION / n");

Serial.println (fc);

lcd.clear ();

lcd.print ("LOCATION");

lcd.setCursor (0, 1);

lcd.print (fc);

lcd.setCursor (0, 0);

pagkaantala (5000);

prevButtonState2 = buttonState2;

Hakbang 3: Ang Build

Ang Build
Ang Build
Ang Build
Ang Build

Ang Build

Sa oras na wala akong access sa isang 3d printer, ito ang aking huling proyekto gamit ang isang off the shelf case. Gumamit ako ng isang madaling magagamit na alarm panel case na idinisenyo para sa 16x2 LCD.

Link: https://www.ebay.co.uk/itm/86-Plastic-project-box-enclosure-case-for-diy-LCD1602-meter-tester-with-buttGA/363214674235?hash=item549148193b:g: IvQAAOSwNXpcFFrv

Ang lahat ay pinalamanan sa loob ng kaso, ang 16x2 LCD display ay nakadikit sa front panel na may circuit na mainit na nakadikit sa lugar.

Hakbang 4: Konklusyon

Konklusyon

Ito ay isang maayos na proyekto para sa isang desktop digital na orasan na hindi nangangailangan ng pagsasaayos o setting, tumatagal ng oras mula sa isang NTP server at ipinapakita ito sa isang malinaw na backlit LCD.

Hindi ito para sa isang kumpletong nagsisimula dahil mayroong ilang pagsasaayos sa kinakailangang code at kailangang i-set up din ang mga stream ng data. Kung mayroon kang anumang mga katanungan o komento, mangyaring huwag mag-atubiling mag-iwan sa akin ng isang puna.

Inirerekumendang: