Mundarija:
Video: ESP8266 ob -havo stantsiyasi soati: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Bu loyiha vaqt va ob -havoni kichik qulay paketda ko'rsatishning ajoyib usuli. Men loyihani, uning qanday ishlashini tushuntiraman va bu erda kodni ko'rsataman.
Belgilangan joyda ob -havo, harorat va bosimni ko'rsatish uchun siz turli tugmalarni bosishingiz mumkin. Odatiy ko'rinish - bu NTP serveridan olinadigan vaqt.
Vaqtni belgilashning hojati yo'q, chunki vaqt NTP serveridan sinxronlanadi va juda aniq. Bu konfiguratsiyada vaqt va mahalliy IP -manzilim bor. Siz kodni asosiy ekranda yoki tugmalarda ko'rsatiladigan sana, ob -havo, bosim va haroratni kiritish uchun o'zgartirishingiz mumkin.
1 -qadam: sxematik
Sxema nisbatan sodda va oson
kuzatib boring. Agar siz o'zingizning PCB -ni aylantirmoqchi bo'lsangiz, gerber fayli mavjud. Butun kontaktlarning zanglashiga 5V mikro USB ulanish orqali keladi. Bu kontaktlarning zanglashiga olib kelishini osonlashtiradi. 5V past tushadigan 3.3V regulyatoriga, LM 3940 ga uzatiladi, bu esa ESP8266 ga 3,3V beradi. ESP8266 -da USB ulagichi bor, lekin men uni umuman ishlatmaslikni tanladim, chunki 5V LCD -ni ham boshqaradi.
3.3V ESP8266 bilan ishlatilishi kerak, siz uni 5V bilan to'g'ridan -to'g'ri boshqarolmaysiz, chunki u taxtani o'ldiradi.
Ikkita sensorli kalit D5 va D6 ga ulangan va ekranda har xil ma'lumotlarni ko'rsatish uchun kodda tuzilgan. Menda harorat/bosim va prognozlar o'rnatilgan.
Barcha komponentlar qo'lda lehimlanadi yoki gerber mening GitHub -da mavjud:
2 -qadam: Kod
github.com/allenelectronics/esp8266weatherstation
Kod Arduino IDE -da tuzilgan va ishlash uchun konfiguratsiyani talab qiladi
Birinchidan, kodni yuklash uchun IDE -ga ESP8266 kartasini o'rnatish kerak.
Buni qanday qilish haqida batafsil ko'rsatmalar bu erda:
Ob -havo funktsiyasini olish uchun men to'g'ridan -to'g'ri API -dan ob -havo ma'lumotlarini to'playdigan va sizning kodingizga kiritilishi mumkin bo'lgan kodni yaratadigan RemoteMe -dan foydalanishni tanladim. Siz o'z veb -saytida ro'yxatdan o'tishingiz va ma'lumotlar oqimini sozlashingiz kerak:
RemoteMe haqidagi hujjatlarni bu erda topishingiz mumkin:
O'rnatishdan oldin bajarishingiz kerak bo'lgan ba'zi bir aniq ta'riflar mavjud.
#define WIFI_NAME "SSID bu erga ketadi"
#defini belgilang "parol bu erga ketadi".
#DEVICE_ID ni aniqlang 1
#devine DEVICE_NAME "REMOTEME. ORG OBTAIN"
#define TOKEN "REMOTEME. ORG'DAN OBTAIN"
Bu erda ta'riflarni siz Wi -Fi ma'lumotlari va RemoteMe -dan olgan ma'lumotlarga asoslanib belgilashingiz kerak.
Ushbu kutubxonalarning barchasi o'rnatilgan va kodga kiritilganligiga ishonch hosil qilishingiz kerak. Men olish qiyinroq bo'lgan havolalarni qo'shdim.
#qo'shing //https://github.com/remoteme/RemoteMeArduinoLibrary
#qo'shing
#qo'shing
#qo'shing
#qo'shing
O'zgarish kerak bo'lgan oxirgi qism - bu sizning joylashuvingiz, chunki bu loyihada GPS ishlatilmaydi. Siz "LOCATION" qatorini o'zgartirishingiz kerak:
aks holda (buttonState2 == LOW && prevButtonState2 == HIGH) {
Serial.print ("LOCATION / n");
Serial.println (fc);
lcd.clear ();
lcd.print ("JOYLASH");
lcd.setCursor (0, 1);
lcd.print (fc);
lcd.setCursor (0, 0);
kechikish (5000);
prevButtonState2 = buttonState2;
3 -qadam: Qurilish
Qurilish
O'sha paytda men 3D printerga kira olmaganman, bu javon qutisidan foydalangan oxirgi loyiham edi. Men 16x2 LCD displey uchun mo'ljallangan, mavjud bo'lgan signal paneli qutisini ishlatardim.
Havola: https://www.ebay.co.uk/itm/86-Plastic-project-box-enclosure-case-for-diy-LCD1602-meter-tester-with-buttGA/363214674235?hash=item549148193b:g: IvQAAOSwNXpcFFrv
Hammasi korpus ichida to'ldirilgan, 16x2 o'lchamli LCD displey old panelga yopishtirilgan, elektron platasi joyiga issiq yopishtirilgan.
4 -qadam: Xulosa
Xulosa
Bu ish stoli raqamli soati uchun aniq loyihadir, uni sozlash yoki sozlash talab qilinmaydi, u NTP serveridan vaqt oladi va uni orqa yoritilgan LCD displeyda ko'rsatadi.
Bu mutlaqo yangi boshlanuvchilar uchun emas, chunki kodning konfiguratsiyasi talab qilinadi va ma'lumotlar oqimini ham sozlash kerak. Agar sizda biron bir savol yoki sharh bo'lsa, iltimos, menga sharh qoldiring.
Tavsiya:
Pensiya soati / hisoblash / Dn soati: 4 qadam (rasmlar bilan)
Pensiya soati / hisoblash / Dn soati: Menda tortmasida 8x8 o'lchamli LED nuqta matritsali displeylar bor edi va ular bilan nima qilish kerakligi haqida o'yladim. Boshqa ko'rsatmalardan ilhomlanib, men kelajakdagi sana/vaqtni sanash uchun orqaga/yuqoriga ko'rsatish ekranini yaratish g'oyasini oldim va agar belgilangan vaqt
Internet soati: NTP protokoli bilan ESP8266 NodeMCU yordamida OLED yordamida sana va vaqtni ko'rsatish: 6 qadam
Internet soati: NTP protokoli bilan ESP8266 NodeMCU yordamida OLED yordamida sana va vaqtni ko'rsatish: Salom bolalar, biz Internetdan vaqt oladigan Internet soatini quramiz, shuning uchun bu loyihani ishga tushirish uchun hech qanday RTC kerak emas, unga faqat ishlaydigan Internet aloqasi Va bu loyiha uchun sizga esp8266 kerak bo'ladi, u
ESP8266 hech qanday RTCsiz tarmoq soati - Nodemcu NTP soati RTC yo'q - INTERNET CLOCK LOYIHASI: 4 qadam
ESP8266 hech qanday RTCsiz tarmoq soati | Nodemcu NTP soati RTC yo'q | INTERNET CLOCK LOYIHASI: Loyihada RTCsiz soat loyihasi yaratiladi, wifi yordamida internetdan vaqt oladi va uni st7735 displeyida ko'rsatadi
Gixie soati: Glow Tube -ning eng chiroyli soati: 4 qadam
Gixie soati: eng chiroyli nurli soat: Menga Niksi kolbasi juda yoqadi, lekin bu juda qimmat, men bunga qodir emasman. Shunday qilib, men yarim yil davomida bu Gixie soatini yaratdim. Gixie soatiga ws2812 akril nuri yordamida erishish mumkin, men RGB naychasini yupqaroq qilish uchun qo'limdan kelganini qilaman
Yotoqxona elektr stantsiyasi/NiMH zaryadlash stantsiyasi: 3 qadam
Yotoqxona elektr stantsiyasi/NiMH zaryadlash stantsiyasi: Menda elektr stantsiyasi bor. Men bitta dastgohga zaryadlangan hamma narsani siqib chiqarmoqchi edim va unda lehimlash uchun joy bo'lishi kerak edi. Quvvatli narsalar ro'yxati: uyali telefon (buzilgan, lekin u mening telefonim batareyalarini zaryad qiladi, shuning uchun u har doim ulanadi va zaryadlanadi)