Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Tee prototyyppi
- Vaihe 2: Ohjelmasuunnittelu
- Vaihe 3: Ohjelmakoodi
- Vaihe 4: Luo laatikko
Video: Tweerstationneke A.k.a. Hollannin sääasema: 4 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Isäni on aina kiinnostunut viimeisimmistä uutisista ja viimeisimmistä säätiedoista. Joten se toi minut täydelliseen syntymäpäivälahjaan, kun hänestä tuli 76: Pieni, aina päällä oleva sääasema ilman hölynpölyä, se vain istuu hiljaa nurkassa koko päivän ja antaa yhteenvedon viimeisimmistä ennusteista.
Se on suunniteltu kahden hollantilaisen verkkosivuston ympärille. Luultavasti näet tämän tämän aiheen hauskalla paikallisella otsikolla! Yksi antaa paikallisen ennusteen kaupunkikohtaisesti 10 minuutin välein json -muodossa. Toinen antaa sateen ennusteen seuraaville kahdelle tunnille tavallisessa tekstimuodossa, joka on aina kätevä tietää. Olen varma, että jos et asu Alankomaissa, voit helposti mukauttaa tämän aiheen mihin tahansa muuhun palveluun.
Tarvikkeet
- ESP8266 -levy; suosittelen Wemos D1 minin käyttöä
- 1,8 tuuman TFT -näyttö, jossa 128*160 pistettä; 16 -bittinen väri
- Muutama kaapeli
- Ohjelma sellaisenaan tai aloittaaksesi oman luomisen
- Hieno laatikko, joka yhdistää kaiken. Käytä vakiomallia tai tulosta omaasi, jonka malli on liitetty
Vaihe 1: Tee prototyyppi
Näytön ja ohjaimen yhdistäminen
Käytä pientä litteää kaapelia ja juota levy ja TFT -näyttö yhdessä. Käytä luetteloa osien liittämiseen oikein
TFT-NÄYTTÖ ------------------ WEMOS
LED ------------------------------- D8 SCK ---------------- --------------- D5SDA ------------------------------- D7A0- -------------------------------- D3RESET ----------------- ----------- D2CS ---------------------------------- D4GND --- ---------------------------- GNDVCC --------------------- ---------- 3V3
Vaihtoehtoisesti voit laittaa LED -valon 3v3: een nastan D8 sijaan. Olen käyttänyt tappia D8, jotta laite menisi nukkumaan noin klo 23.00 yöllä ja heräisi uudelleen noin klo 07.00. Tämä on ensimmäinen hetki, kun se lukee säätiedotteen sen jälkeen, koska se lukee otsikon ajan tarkistamiseksi. Tässä laitteessa ei ole reaaliaikaista kelloa.
Jos tämä kaikki toimii, liitä USB -kaapeli Wemosiin ja lataa ohjelmisto. Jos kaikki toimii, voit aloittaa laatikon rakentamisen.
Vaihe 2: Ohjelmasuunnittelu
Minun ideani tästä säälaitteesta missä
- Helposti mukautettavissa toiseen wifi -ympäristöön
- Näytä sääennuste ja sateen ennuste
- Ei painikkeita
- Ei ääntä, yksinkertainen qui, ei sumua
Tätä silmällä pitäen loin ohjelman, joka alkaa WifiManager -koodilla, kun se ei löydä tunnettua Wifi -verkkoa. Se luo oman verkon ja näyttää nimen näytössä. Tämä antaa sinulle mahdollisuuden asettaa Wifi -parametrit omaan kotiverkkoosi.
Tämän asetuksen jälkeen se näyttää sääennusteen ja sateen vuorotellen 20 sekunnin välein. Jos jostain syystä seuraavan ennusteen lukeminen ei ole mahdollista, näytön oikeaan reunaan tulee pieni virhenumero; ja edellinen kuva näytetään. Seuraavassa ajossa tiedot yritetään noutaa uudelleen.
Säätiedot saadaan sivustolta json -tyylisellä viestillä. Siinä olevat tiedot muunnetaan ja tallennetaan globaaleihin muuttujiin. Tällä tavalla voimme irrottaa tiedon haun sen näyttämisestä. Ei ole mitään syytä hakea säätä nopeammin kuin kerran 10 minuutissa.
Sateen saaminen on vieläkin helpompaa. Se tarjoillaan pelkkänä tekstimuodossa, ja sademäärän odotetaan olevan arvo 0..255; pystysuora palkki; aika kullakin rivillä. Tämä 5 minuutin välein seuraavan 2 tunnin ajan. Sadearvo toimitetaan älykkäällä tavalla, jossa pienet arvot antavat enemmän tilaa näyttää ero suurempina arvoina. Käytetty kaava on seuraava:
mm tunti = pyöreä (pow (10, (sadearvo - 109) / 32) * 10) / 10;
Huomaa, että "kertaa 10, jaa 10" on temppu, jolla varmistetaan, että pisteen takana on yksi desimaali. Riippuen odotettavissa olevasta sademäärästä seuraavien 2 tunnin aikana, kaaviossa käytetään 3 asteikkoa;
- Enintään 5 mm/tunti odotettavissa
- Enimmäisnopeus 20 mm/tunti
- Max otetaan ennusteen suurimmasta arvosta
Alankomaissa kaikkien aikojen korkein arvo on noin 80 mm/tunti; joten tämä mittakaava toimii täydellisesti. Muiden maiden kannalta saattaa olla viisasta muuttaa tätä.
Vaihe 3: Ohjelmakoodi
Editorin asetukset
Tämän säälaitteen ohjelmisto on luotu Arduino -ohjelmointiympäristössä. Löydät sen liitteenä avuksesi. Käytä sitä sellaisenaan; tai muuta sitä tarpeidesi mukaan. Kaikki teksti, joka voidaan näyttää TFT -näytöllä, määritetään ohjelman päälle. mikä tarkoittaa, että voit halutessasi vaihtaa sen helposti omalle kielellesi. Käytin Wemos D1 miniä, mutta vastaavat levyt toimivat myös.
Arduino -ympäristössä käytin seuraavia asetuksia;
- Alusta: LOLIN (WEMOS) D1 RA & Mini
- Latausnopeus: 115200
- Suorittimen taajuus: 80 MHz
- Salaman koko: 4 M (ei SPIFFS) V2 Alempi muisti pois käytöstä
Ohjelmistoajastimia käytetään tekemään silmukasta () helpompaa ja luettavampaa. Tietojen näyttö on erillään tietojen lataamisesta. Tällä tavoin voimme käyttää muita näyttökokoja jne. Ilman koko ohjelman muuttamista.
Käytä.ino -tiedostoa ja lataa se arduino -editoriin. Asenna taulusi editorissa. Liitä otsikkotiedosto, joka varmistaa, että tarvittavat C-tyyliset PROGMEM-taulukot sisältyvät ohjelmaan.
Sd-kortti
Huomaa, että useimmissa käytettävissä olevissa 1,8 tuuman näytöissä on SD -korttipaikka näytön takana. Tämä on mukava ominaisuus, jonka avulla voit tallentaa suuria kuvia kortille. Useimmilla mikro-ohjaimilla ei ole liikaa muistia, joten se auttaa.
Vaikka vietän paljon aikaa yrittäessäni saada SD -kortin toimimaan näytön kanssa, en voinut saada toimivaa tilannetta. Voisin käyttää näyttöä; haen tiedoston SD -kortilta onnistuneesti, mutta sen jälkeen en enää päässyt TFT -näyttöön. Kirjastojen vaihtaminen, kirjastojen järjestyksen muuttaminen ja ohjelman "riisuminen" pienimmälle elimelle muiden mahdollisuuksien poissulkemiseksi ei auttanut minua.
Lisää turhautumistani; Internetissä on tonnia esimerkkejä ihmisistä, jotka tekevät vastaavia asioita positiivisella tuloksella, hmmm. Voiko TFT -näytössä olla laitteisto -ongelma? Tai jotain mitä en tullut ajatelleeksi? Kaikki ehdotukset ovat tervetulleita seuraavaan yritykseen. Lopuksi vietettyään joitakin iltoja siihen; Päätin jättää sen tien. Koska kuvat ovat vain 50 x 50 pikseliä (mikä tarkoittaa 5000 tavua kukin 16 -bittisellä värillä), ESP pystyy tallentamaan tämän helposti PROGMEM -ohjelmaan. Tämä on siis temppu, jota käytin.
Tämä valinta johti jälleen haasteeseen. Kuinka saada BMP -kuva minulla oli luettavaan muotoon. Hetken etsinnän jälkeen löysin sivuston Henning Karlsenilta, joka ratkaisi tämän palapelin aiemmin. Hän loi ohjelman, joka muuntaa-p.webp
Vaihe 4: Luo laatikko
Tämä ei ole ensimmäinen tarvitsemani laatikko. Toimittajilta on saatavana paljon vakiorasioita. Pienellä sahalla, veitsellä, poralla jne. On helppo tehdä reikä laatikkoon. Mutta en ole koskaan onnistunut tekemään tarkkaa hienoa suorakulmiota. Luultavasti ei riitä taidot ja/tai kärsivällisyys;-)
Ratkaisu: Olin onnekas. Minulla on yliopisto, joka on kuin supermies, jos on kyse viulusta teknisillä asioilla. Se sisältää myös 3D -suunnittelun ja tulostuksen. Niinpä hän päätti tarjota paljon vapaa -aikaa TFT -näytön ja mikro -ohjaimen mittaamiseen ja laatikon luomiseen sen ympärille. Kaikki sopii hyvin, katso kuvia. Se sisältää jopa näytön napsautukset, reiän USB -liittimelle ja paikan mikro -ohjaimen kiinnittämiseen.
Kiitos Arjan tästä hienosta työstä !!! Vielä parempi, hän oli niin ystävällinen antamaan kaikille pääsyn työhönsä, joten jos lataat hänen tiedostonsa linkistä ja käytät sitä omassa 3D -tulostimessasi, voit luoda saman laatikon sisällöllä.
Suositeltava:
Ammattimainen sääasema käyttäen ESP8266- ja ESP32 -DIY: 9 vaihetta (kuvilla)
Ammattimainen sääasema käyttämällä ESP8266- ja ESP32 -DIY: LineaMeteoStazione on täydellinen sääasema, joka voidaan liittää Sensirionin ammattitunnistimiin sekä joihinkin Davis -instrumenttikomponentteihin (sademittari, tuulimittari)
HC-12 pitkän kantaman sääasema ja DHT-anturit: 9 vaihetta
HC-12 pitkän kantaman sääasema ja DHT-anturit: Tässä opetusohjelmassa opimme tekemään etäsääaseman kahden dht-anturin, HC12-moduulin ja I2C-LCD-näytön avulla. Katso video
Satelliitti -avusteinen sääasema: 5 vaihetta
Satelliitti -avusteinen sääasema: Tämä projekti on tarkoitettu ihmisille, jotka haluavat kerätä omia säätietoja. Se voi mitata tuulen nopeuden ja suunnan, lämpötilan ja ilmankosteuden. Se pystyy myös kuuntelemaan maapalloa kiertäviä sääsatelliitteja kerran 100 minuutissa. Minä tahdon
Kädessä pidettävä sääasema: 4 vaihetta
Kädessä pidettävä sääasema: Tässä opetusohjelmassa käytämme Arduinoa, olet -näyttöä ja SparkFun -ympäristöanturiyhdistelmää CCS811- ja BME280 -antureiden kanssa rakentaaksesi kämmenlaitteen, joka mittaa lämpötilaa, kosteutta, TVOC -tasoja, ilmanpainetta
NaTaLia -sääasema: Arduinon aurinkovoimalla toimiva sääasema tehty oikein: 8 vaihetta (kuvilla)
NaTaLia -sääasema: Arduino -aurinkovoimalla toimiva sääasema tehty oikein: 1 vuoden onnistuneen toiminnan jälkeen kahdessa eri paikassa jaan aurinkovoimalla toimivan sääaseman projektisuunnitelmani ja selitän, kuinka siitä kehittyi järjestelmä, joka voi todella selviytyä pitkään ajan aurinkoenergiasta. Jos seuraat