Mundarija:

Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi: 4 qadam
Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi: 4 qadam

Video: Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi: 4 qadam

Video: Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi: 4 qadam
Video: Qiz o'zini o'zi QONDIRAYOTGANIDA honaga OTASI kirib qoldi I tarjima kinolar 2024, Noyabr
Anonim
Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi
Tweerstationneke A.k.a. Gollandiyalik ob -havo stantsiyasi

Dadam har doim eng so'nggi yangiliklar va ob -havo ma'lumotlariga qiziqadi. Shunday qilib, u meni 76 yoshga to'lganida tug'ilgan kunim uchun eng zo'r sovg'aga olib keldi: har doim bema'nilik ko'rsatadigan kichik ob-havo stantsiyasi, u kun bo'yi jimgina burchakda o'tirib, so'nggi bashoratlar haqida qisqacha ma'lumot beradi.

U Gollandiyaning ikkita veb -saytiga mo'ljallangan. Ehtimol, siz buni ushbu mavzuning kulgili mahalliy sarlavhasida ko'rishingiz mumkin! Json formatida har 10 daqiqada har bir shahar uchun mahalliy prognoz beriladi. Ikkinchisi, keyingi ikki soat davomida yomg'ir prognozini oddiy matn formatida beradi, bu har doim bilish uchun qulaydir. Ishonchim komilki, agar siz Gollandiyada yashamasangiz, bu mavzuni boshqa xizmatlarga osongina moslashtirishingiz mumkin.

Ta'minotlar

  • ESP8266 taxtasi; Wemos D1 mini -dan foydalanishni tavsiya eting
  • 128*160 nuqta bilan 1,8 dyuymli TFT ekran; 16 bitli rang
  • Bir nechta kabellar
  • Dastur avvalgidek yoki o'zingiz yaratishni boshlang
  • Hammasini birlashtirish uchun yaxshi quti. Standartdan foydalaning yoki ilova qilingan dizayn bilan o'zingiz chop eting

1 -qadam: Prototipni yarating

Prototipni yarating
Prototipni yarating

Ekran va boshqaruvchi ulanadi

Kichkina tekis kabeldan foydalaning va taxta va TFT ekranini lehimlang. Ion qismlarini to'g'ri ulash uchun ro'yxatni ishlating

TFT EKRAN ------------------ WEMOS

LED ------------------------------ D8 SCK ---------------- --------------- D5SDA ------------------------------- D7A0- -------------------------------- D3RESET ----------------- ----------- D2CS ---------------------------------- D4GND --- ---------------------------- GNDVCC --------------------- ---------- 3V3

Shu bilan bir qatorda, siz LEDni D8 pin o'rniga 3v3 ga qo'yishingiz mumkin. Men D8 pinidan foydalanib, qurilmani tungi 23:00 da uxlashga va yana soat 07:00 da uyg'onishga majbur qildim. Bu vaqtdan keyin ob -havo ma'lumotlarini o'qigan birinchi daqiqada samarali bo'ladi, chunki u vaqtni tekshirish uchun sarlavhani o'qiydi. Bu qurilmada real vaqt soati yo'q.

Agar bularning barchasi ishlayotgan bo'lsa, usb kabelini Wemos -ga ulang va dasturni yuklang. Agar hamma narsa yaxshi bo'lsa, siz qutini qurishni boshlashingiz mumkin.

2 -qadam: Dastur dizayni

Dastur dizayni
Dastur dizayni

Mening ob -havo qurilmasi haqidagi fikrlarim

  • Boshqa Wi -Fi muhitiga osongina moslashadi
  • Yomg'ir va ob -havo ma'lumotlarini ko'rsatish
  • Tugmalar yo'q
  • Ovoz yo'q, oddiy qui, shovqin yo'q

Shuni inobatga olib, men ma'lum Wi -Fi tarmog'ini topa olmaganda, WifiManager kodidan boshlanadigan dasturni yaratdim. U o'z tarmog'ini yaratadi va nomini displeyda ko'rsatadi. Bu sizga Wi -Fi parametrlarini o'z uy tarmog'ingizga o'rnatish imkoniyatini beradi.

Ushbu sozlamadan so'ng, har 20 soniyada ob -havo ma'lumoti va yomg'ir yog'ishi ko'rsatiladi. Agar biron sababga ko'ra keyingi prognozni o'qish imkoni bo'lmasa, displeyning o'ng tomonida kichik xato raqami ko'rsatiladi; va oldingi rasm ko'rsatiladi. Keyingi bosqichda ma'lumotlarni qayta tiklashga harakat qilinadi.

Ob -havo ma'lumoti saytdan json uslubidagi xabarda olingan. Undagi ma'lumotlar konvertatsiya qilinadi va global o'zgaruvchilarda saqlanadi. Shunday qilib, biz ma'lumotni ko'rsatishni qaytarishni ajratishimiz mumkin. Ob -havoni 10 daqiqada bir marta tezroq olish uchun hech qanday sabab yo'q.

Yomg'ir yog'ishini olish yanada osonroq. Bu oddiy matn formatida, yomg'ir miqdori 0..255 qiymatida kutiladi; vertikal chiziq; har bir satrda vaqt. Keyingi 2 soat ichida bu har 5 daqiqada. Yomg'ir qiymati aqlli tarzda taqdim etiladi, bu erda kichik qiymatlar farqni kattaroq qiymat sifatida ko'rsatish uchun ko'proq joy beradi. Amaldagi formula quyidagicha:

mmhour = yumaloq (pow (10, (yomg'ir qiymati - 109) / 32) * 10) / 10;

E'tibor bering, "10 marta, 10 ga bo'linish" - bu nuqta ortida 1 kasrli raqam borligini ta'minlash uchun hiyla. Kelgusi 2 soat ichida kutiladigan maksimal yomg'ir miqdoriga qarab, grafik uchun 3 ta tarozi ishlatiladi;

  1. Maksimal 5 mm/soat kutilmoqda
  2. Maksimal 20 mm/soat kutilmoqda
  3. Maks prognozning eng yuqori qiymatidan olinadi

Bu erda Gollandiyada bizning qiymatimiz soatiga 80 mm atrofida. shuning uchun bu o'lchov mukammal bo'ladi. Boshqa davlatlar uchun buni o'zgartirish to'g'ri bo'lardi.

3 -qadam: Dastur kodi

Dastur kodi
Dastur kodi

Tahrirlovchining sozlamalari

Bu ob -havo qurilmasi uchun dasturiy ta'minot Arduino dasturlash muhitida yaratilgan. Sizga qulay bo'lishi uchun uni bu erda biriktirilgan holda topasiz. Uni avvalgidek ishlating; yoki sizning ehtiyojlaringizga mos ravishda o'zgartiring. TFT ekranida ko'rsatilishi mumkin bo'lgan barcha matnlar dasturning yuqori qismida aniqlanadi; agar xohlasangiz, uni o'z tilingizga osongina o'zgartirishingiz mumkin. Men Wemos D1 mini -dan foydalanardim, lekin shunga o'xshash taxtalar ham ishlaydi.

Arduino muhitida men quyidagi sozlamalardan foydalandim;

  • Kengash: LOLIN (WEMOS) D1 RA & Mini
  • Yuklab olish tezligi: 115200
  • CPU chastotasi: 80 MGts
  • Flash hajmi: 4M (SPIFFS yo'q) V2 pastki xotira o'chirilgan

Dastur taymerlari loopni () osonroq va o'qilishi osonroq qilish uchun ishlatiladi. Ma'lumotni ko'rsatish ma'lumotni yuklab olishdan ajratilgan. Shunday qilib, biz boshqa ekran o'lchamlarini va boshqalarni ishlatishimiz mumkin, bu esa butun dasturni o'zgartirmasdan.

. Ino faylini ishlating va uni arduino muharririga yuklang. Tahrirlovchiga taxtangizni o'rnating. Dasturga kerakli C-uslubidagi PROGMEM massivlari kirishini ta'minlaydigan sarlavha faylini biriktiring.

SD -karta

E'tibor bering, mavjud 1,8 dyuymli displeylarning ko'pchiligi ekranning orqa tomonida SD -karta uyasiga ega. Bu kartadagi katta rasmlarni saqlashga yordam beradigan ajoyib xususiyat. Aksariyat mikrokontrolderlarning xotirasi juda ko'p emas, bu yordam beradi.

Men SD -kartani displey bilan ishlashga ko'p vaqt sarflagan bo'lsam -da, vaziyatga to'g'ri kela olmadi. Men displeydan foydalanishim mumkin edi; faylni SD -kartadan muvaffaqiyatli chiqarib oling, lekin bundan keyin men TFT ekraniga kira olmadim. Kutubxonalarni o'zgartirish, kutubxonalar tartibini o'zgartirish va boshqa imkoniyatlarni istisno qilish uchun dasturni eng kichik organga "yechish" menga yordam bermadi.

Xafagarchilikni qo'shish uchun; Internetda shunga o'xshash ishlarni ijobiy natija bilan bajaradigan ko'plab misollar bor, hmmm. TFT ekranimda apparat muammosi bo'lishi mumkinmi? Yoki men o'ylamagan narsa? Keyingi urinish uchun har qanday takliflar qabul qilinadi. Bir necha oqshomni o'tkazgandan so'ng; Men bu yo'ldan ketishga qaror qildim. Rasmlar atigi 50x50 piksel bo'lgani uchun (natijada har biri 16 bit rangda 5000 bayt), ESP buni PROGMEM -da osongina saqlashga qodir. Shunday qilib, men ishlatgan hiyla.

Bu tanlov yana bir qiyinchilikni keltirib chiqardi. BMP rasmini o'qiladigan formatga qanday olish mumkin. Qidiruvdan so'ng men saytni Henning Karlsendan topdim, u ilgari bu jumboqni hal qilgan. U-p.webp

4 -qadam: qutini yarating

Qutini yarating
Qutini yarating
Qutini yarating
Qutini yarating
Qutini yarating
Qutini yarating

Bu menga kerak bo'lgan birinchi quti emas. Yetkazib beruvchilardan ko'plab standart qutilar mavjud. Kichkina arra, pichoq, matkap va boshqalar yordamida qutidagi displey uchun teshik yaratish oson. Lekin men hech qachon aniq to'rtburchaklar yasay olmadim. Ehtimol, mahorat va/yoki sabr-toqat etarli emas;-)

Yechim: men omadli edim. Menda texnik narsalar bilan skripka haqida gap ketganda, supermenga o'xshagan kollejim bor. Bunga 3D dizayn va bosib chiqarish ham kiradi. Shunday qilib, u bo'sh vaqtini TFT displeyi va mikrokontrolderini o'lchash va uning atrofida quti yaratish uchun taklif qilishga qaror qildi. Hammasi juda mos keladi, rasmlarga qarang. Unda hatto displey uchun qo'shimcha qurilmalar, USB ulagichi uchun teshik va mikrokontrollerni tuzatish uchun joy ham bor.

Bu ajoyib ish uchun Arjanga rahmat !!! Yaxshisi, u har kimga o'z ishiga kirish huquqini bergani uchun juda mehribon edi, shuning uchun agar siz uning fayllarini havoladan yuklab olib, o'zingizning 3D printeringiz uchun ishlatsangiz, kontentli qutini yaratishingiz mumkin.

Tavsiya: