Sadržaj:

Tweerstationneke A.k.a. Dutch WeatherStation: 4 koraka
Tweerstationneke A.k.a. Dutch WeatherStation: 4 koraka

Video: Tweerstationneke A.k.a. Dutch WeatherStation: 4 koraka

Video: Tweerstationneke A.k.a. Dutch WeatherStation: 4 koraka
Video: Голубая стрела (1958) фильм 2024, Juli
Anonim
Tweerstationneke A.k.a. Dutch WeatherStation
Tweerstationneke A.k.a. Dutch WeatherStation

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

Dizajniran je oko dvije holandske web stranice. Vjerovatno 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 naredna dva sata u formatu običnog teksta, što je uvijek zgodno znati. Siguran sam da ako ne živite u Holandiji, ovu temu možete lako prilagoditi bilo kojoj drugoj usluzi.

Supplies

  • Ploča ESP8266; predlažemo upotrebu Wemos D1 mini
  • 1,8 -inčni TFT ekran sa 128*160 tačaka; 16 bitna boja
  • Nekoliko kablova
  • Program kakav jeste ili za početak kreirajte vlastiti
  • Lijepa kutija za sve to spojiti. Koristite standardni ili odštampajte svoj sa priloženim dizajnom

Korak 1: Napravite prototip

Napravite prototip
Napravite prototip

Povezivanje ekrana i kontrolera

Upotrijebite mali ravni kabel i lemite ploču i TFT ekran 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 postaviti 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. Ovo će biti prvi trenutak da pročita vremenski bilten nakon tog vremena, budući da čita zaglavlje radi provjere vremena. Na ovom uređaju nema sata u stvarnom vremenu.

Ako sve ovo radi, priključite USB kabel u Wemos i učitajte softver. Ako sve funkcionira, možete započeti s izgradnjom kutije.

Korak 2: Dizajn programa

Dizajn programa
Dizajn programa

Moje ideje o ovom vremenskom uređaju gdje

  • Lako se prilagođava drugom WiFi okruženju
  • Prikažite vremensku prognozu i prognozu kiše
  • Nema dugmadi
  • Bez zvuka, jednostavno qui, bez zvižduka

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 ekranu. Ovo vam daje priliku da postavite Wifi parametre na svoju kućnu mrežu.

Nakon ovog postavljanja prikazuje se vremenska prognoza i padavine kiše naizmjence, svakih 20 sekundi. Ako iz nekog razloga nije moguće pročitati sljedeću prognozu, mali broj greške bit će prikazan na desnoj strani ekrana; i prikazaće se prethodna slika. U sljedećoj vožnji pokušava se dohvatiti informacija.

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

Dobijanje kiše je još jednostavnije. Služi se u formatu običnog teksta, s količinom kiše koja se očekuje kao vrijednost 0..255; okomita šipka; vrijeme na svakoj liniji. Ovo svakih 5 minuta u naredna 2 sata. Vrijednost kiše se isporučuje na pametan način gdje male vrijednosti daju više prostora da se razlike pokažu 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, podijeljeno s 10" trik koji osigurava da imamo 1 decimalu iza točke. U zavisnosti od maksimalne količine kiše koja se očekuje u naredna 2 sata, za grafikon se koriste 3 skale;

  1. Očekuje se maksimalno 5 mm/sat
  2. Očekuje se maksimalno 20 mm/sat
  3. Maks je uzet iz najveće vrijednosti u prognozi

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

Korak 3: Programski kod

Programski kod
Programski kod

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 kakav jeste; ili ga promenite tako da odgovara vašim potrebama. Sav tekst koji se može prikazati na TFT ekranu se DEFINIRA na vrhu programa; što znači da ga možete lako 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 otpremanja: 115200
  • Frekvencija procesora: 80 MHz
  • Veličina blica: 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 je odvojen od preuzimanja informacija. Na ovaj način možemo koristiti druge veličine ekrana 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 ekrana ima utor za SD karticu na stražnjoj strani ekrana. 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 da SD kartica radi sa ekranom, nisam uspio doći u situaciju u kojoj se može raditi. Dobro bi mi došao ekran; uspješno sam preuzeo datoteku sa SD kartice, ali nakon toga više nisam mogao doći do TFT ekrana. Promjena biblioteka, mijenjanje redoslijeda biblioteka i "skidanje" programa na najmanje tijelo kako bi se isključile druge mogućnosti nisu mi pomogle.

Da dodam na svoju frustraciju; na internetu postoji mnoštvo primjera ljudi koji rade slične stvari s pozitivnim rezultatom, hmmm. Možda je u pitanju hardverski problem na mom TFT ekranu? Ili nešto na šta nisam mislio? Svi prijedlozi su dobrodošli za sljedeći pokušaj. Na kraju nakon što ste proveli nekoliko večeri na tome; Odlučio sam da napustim 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. On je stvorio program koji pretvara datoteke tipa-p.webp

Korak 4: Kreirajte okvir

Kreirajte kutiju
Kreirajte kutiju
Kreirajte kutiju
Kreirajte kutiju
Kreirajte kutiju
Kreirajte kutiju

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

Rješenje: imao sam sreću. Imam fakultet koji je poput supermena ako treba petljati po tehničkim stvarima. To uključuje i 3D dizajn i štampanje. Stoga je odlučio ponuditi puno svog slobodnog vremena za mjerenje TFT ekrana i mikro kontrolera i stvoriti okvir oko njega. Sve lepo stoji, pogledajte slike. Sadrži čak i dodatke za zaslon, otvor za USB konektor 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čuje se: