Sadržaj:

Tweerstationneke A.k.a. Nizozemska vremenska postaja: 4 koraka
Tweerstationneke A.k.a. Nizozemska vremenska postaja: 4 koraka

Video: Tweerstationneke A.k.a. Nizozemska vremenska postaja: 4 koraka

Video: Tweerstationneke A.k.a. Nizozemska vremenska postaja: 4 koraka
Video: Abandoned House Of German Immigrants In The USA ~ War Changed Them! 2024, Studeni
Anonim
Tweerstationneke A.k.a. Nizozemska WeatherStation
Tweerstationneke A.k.a. Nizozemska WeatherStation

Oca uvijek zanimaju najnovije vijesti i najnovije informacije o vremenu. To me dovelo do savršenog rođendanskog poklona kad je napunio 76 godina: Mala stalna meteorološka postaja bez gluposti, koja cijeli dan mirno sjedi u kutu i daje sažetak najnovijih predviđanja.

Dizajniran je oko dvije nizozemske web stranice. Vjerojatno to možete vidjeti na smiješnom lokalnom naslovu ove teme! Jedan daje lokalnu prognozu po gradu svakih 10 minuta u json formatu. Drugi daje prognozu kiše za sljedeća dva sata u običnom tekstualnom obliku što je uvijek zgodno znati. Siguran sam da ako ne živite u Nizozemskoj, ovu temu možete lako prilagoditi bilo kojoj drugoj usluzi.

Pribor

  • Ploča ESP8266; predlažemo upotrebu Wemos D1 mini
  • 1,8 -inčni TFT zaslon sa 128*160 točaka; 16 bitna boja
  • Nekoliko kabela
  • Program kakav jest ili za početak stvorite vlastiti
  • Lijepa kutija za sve to spojiti. Koristite standardni ili ispišite vlastiti s priloženim dizajnom

Korak 1: Napravite prototip

Napravite prototip
Napravite prototip

Povezivanje zaslona i kontrolera

Upotrijebite mali ravni kabel i lemite ploču i TFT zaslon zajedno. Pomoću popisa spojite dijelove na pravi način

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

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

Alternativno, LED možete staviti na 3v3 umjesto na pin D8. Koristio sam pin D8 da bi uređaj zaspao oko 23:00 navečer i opet se probudio oko 07:00. Učinkovito, ovo će biti prvi trenutak kada pročita vremenski bilten nakon tog vremena, budući da čita zaglavlje radi provjere vremena. U ovom uređaju nema sata u stvarnom vremenu.

Ako sve ovo radi, priključite USB kabel na Wemos i učitajte softver. Ako sve uspije, možete početi graditi kutiju.

Korak 2: Dizajn programa

Dizajn programa
Dizajn programa

Moje ideje o ovom vremenskom uređaju gdje

  • Lako se prilagođava drugom WiFi okruženju
  • Prikaz vremenske prognoze i prognoze kiše
  • Nema gumba
  • Bez zvuka, jednostavno qui, bez muzice

Imajući to na umu, stvorio sam program koji počinje s kodom WifiManager kada ne može otkriti poznatu Wifi mrežu. On stvara vlastitu mrežu i prikazuje naziv na zaslonu. To vam daje priliku da postavite Wifi parametre na svoju kućnu mrežu.

Nakon ovog postavljanja prikazuje se vremenska prognoza i oborine kiše naizmjence, svakih 20 sekundi. Ako iz nekog razloga nije moguće pročitati sljedeću prognozu, mali broj pogreške prikazat će se na desnoj strani zaslona; i prikazat će se prethodna slika. U sljedećoj vožnji novi je pokušaj dohvaćanja podataka.

Podaci o vremenu primaju se s web mjesta u poruci u stilu json. Podaci u njemu se pretvaraju i spremaju u globalne varijable. Na ovaj način možemo odvojiti dohvat informacija od prikazivanja. Nema razloga za brže dohvaćanje vremena jednom u 10 minuta.

Dobijanje kiše još je jednostavnije. Poslužuje se u običnom tekstualnom obliku, s količinom kiše koja se očekuje kao vrijednost 0..255; okomita šipka; vrijeme u svakoj liniji. Ovo svakih 5 minuta sljedeća 2 sata. Vrijednost kiše isporučuje se na pametan način gdje male vrijednosti daju više prostora za prikaz razlike kao veće vrijednosti. Korištena formula je sljedeća:

mm sat = okrugli (pow (10, (kišna vrijednost - 109) / 32) * 10) / 10;

Imajte na umu da je "puta 10, podijeli s 10" trik koji osigurava da imamo 1 decimalu iza točke. Ovisno o maksimalnoj količini kiše koja se očekuje u naredna 2 sata, za grafikon se koriste 3 ljestvice;

  1. Očekuje se maksimalno 5 mm/sat
  2. Očekuje se maksimalno 20 mm/sat
  3. Maks je uzet iz najviše vrijednosti predviđanja

Ovdje u Nizozemskoj, najveća vrijednost svih vremena, iznosi oko 80 mm/sat; pa će ova ljestvica savršeno uspjeti. Za druge zemlje bilo bi pametno to promijeniti.

Korak 3: Programski kod

Kod programa
Kod programa

Postavke uređivača

Softver za ovaj vremenski uređaj kreiran je u programskom okruženju Arduino. Ovdje ćete ga pronaći u prilogu radi vaše udobnosti. Koristite ga onakvim kakav jest; ili ga promijeniti prema svojim potrebama. Sav tekst koji se može prikazati na TFT ekranu se DEFINIRA na vrhu programa; što znači da ga možete jednostavno promijeniti na svoj jezik ako želite. Koristio sam Wemos D1 mini, ali slične ploče će također raditi.

U okruženju Arduino koristio sam sljedeće postavke;

  • Ploča: LOLIN (WEMOS) D1 RA & Mini
  • Brzina prijenosa: 115200
  • Frekvencija procesora: 80 MHz
  • Veličina bljeskalice: 4M (bez SPIFFS -a) V2 Donja memorija onemogućena

Softverski mjerači vremena koriste se da bi loop () učinili lakšim i čitljivijim. Prikaz informacija odvojen je od preuzimanja informacija. Na taj način možemo koristiti druge veličine zaslona itd. Bez potrebe za promjenom cijelog programa.

Upotrijebite.ino datoteku i učitajte je u arduino uređivač. Postavite ploču u uređivaču. Priložite datoteku zaglavlja koja osigurava da su potrebni PROGMEM nizovi u C stilu uključeni u program.

SD kartica

Imajte na umu da većina dostupnih 1,8 -inčnih zaslona ima utor za SD karticu na stražnjoj strani zaslona. Ovo je lijepa značajka koja vam pomaže pohraniti velike slike na karticu. Većina mikrokontrolera nema previše memorije na ploči pa to pomaže.

Iako provodim puno vremena pokušavajući natjerati SD karticu da radi s zaslonom, nisam uspio ostvariti situaciju. Mogao bih koristiti zaslon; uspješno dohvatio datoteku sa SD kartice, ali nakon toga više nisam mogao doći do TFT zaslona. Promjena knjižnica, mijenjanje redoslijeda knjižnica i "skidanje" programa na najmanje tijelo kako bi se isključile druge mogućnosti nisu mi pomogli.

Dodati mojoj frustraciji; na internetu ima mnogo primjera ljudi koji rade slične stvari s pozitivnim rezultatom, hmmm. Možda je problem u hardveru na mom TFT ekranu? Ili nešto o čemu nisam razmišljao? Svi prijedlozi su dobrodošli za sljedeći pokušaj. Na kraju nakon što ste proveli nekoliko večeri na tome; Odlučio sam napustiti taj put. Budući da su slike samo 50x50 piksela (što rezultira 5000 bajtova u 16 -bitnoj boji), ESP može s lakoćom to spremiti u PROGMEM. To je trik koji sam upotrijebio.

Ovaj izbor rezultirao je još jednim izazovom. Kako pretvoriti BMP sliku koju sam imao u čitljiv format. Nakon nekog pretraživanja otkrio sam stranicu od Henninga Karlsena koji je ranije riješio ovu zagonetku. Napravio je program koji pretvara datoteke tipa-p.webp

Korak 4: Stvorite okvir

Stvorite kutiju
Stvorite kutiju
Stvorite kutiju
Stvorite kutiju
Stvorite kutiju
Stvorite kutiju

Ovo nije prva kutija koja mi je trebala. Dosta standardnih kutija dostupno je od dobavljača. Pomoću male pile, noža, bušilice itd. Lako je stvoriti rupu za zaslon u kutiji. Ali nikada nisam uspio napraviti točno lijep pravokutnik. Vjerojatno nema dovoljno vještina i/ili strpljenja;-)

Rješenje: imao sam sreću. Imam fakultet koji je poput supermana ako se treba petljati po tehničkim stvarima. To uključuje i 3D dizajn i ispis. Stoga je odlučio ponuditi puno svog slobodnog vremena za mjerenje TFT zaslona i mikro kontrolera te stvoriti okvir oko njega. Sve lijepo stoji, pogledajte slike. Sadrži čak i dodatke za zaslon, otvor za USB priključak i mjesto za pričvršćivanje mikro kontrolera.

Hvala Arjanu na ovom super obavljenom poslu !!! Još bolje, bio je tako ljubazan da svima omogući pristup svom poslu, pa ako preuzmete njegove datoteke s veze i upotrijebite ih za svoj vlastiti 3D pisač, možete stvoriti istu kutiju sa sadržajem.

Preporučeni: