Tartalomjegyzék:

Tweerstationneke A.k.a. Holland meteorológiai állomás: 4 lépés
Tweerstationneke A.k.a. Holland meteorológiai állomás: 4 lépés

Videó: Tweerstationneke A.k.a. Holland meteorológiai állomás: 4 lépés

Videó: Tweerstationneke A.k.a. Holland meteorológiai állomás: 4 lépés
Videó: Катастрофа в Европе! Улицы под водой, дома и автомобили затоплены в Маастрихте 2024, Július
Anonim
Tweerstationneke A.k.a. Holland WeatherStation
Tweerstationneke A.k.a. Holland WeatherStation

Apámat mindig érdeklik a legfrissebb hírek és a legfrissebb időjárási információk. Így aztán eljutottam a tökéletes születésnapi ajándékhoz, amikor 76 éves lett: Egy kicsi, állandóan bejárható időjárás-állomás, nincs hülyesége, egész nap csak csendben ül egy sarokban, és összefoglalja a legújabb előrejelzéseket.

Két holland weboldal körül készült. Valószínűleg ezt láthatja a téma vicces helyi címén! Az egyik 10 percenként json formátumban adja meg a helyi előrejelzést városonként. A másik az eső előrejelzését adja a következő két órára egyszerű szöveg formátumban, amelyet mindig praktikus tudni. Biztos vagyok benne, hogy ha nem Hollandiában él, akkor könnyen alkalmazhatja ezt a témát bármely más szolgáltatáshoz.

Kellékek

  • ESP8266 tábla; javasoljuk a Wemos D1 mini használatát
  • 1,8 hüvelykes TFT képernyő 128*160 képpontos; 16 bites szín
  • Néhány kábel
  • A program úgy, ahogy van, vagy kezdje el a saját létrehozásával
  • Szép doboz az egész összerakásához. Használjon szabványos példányt, vagy nyomtassa ki a sajátját a mellékelt mintával

Lépés: Készítse el a prototípust

Készítse el a prototípust
Készítse el a prototípust

A képernyő és a vezérlő csatlakoztatása

Használjon kis lapos kábelt, és forrasztja össze a táblát és a TFT képernyőt. Használja a listát az alkatrészek megfelelő csatlakoztatásához

TFT KÉPERNYŐ ------------------ WEMOS

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

Alternatív megoldásként a LED -et 3v3 -ra is helyezheti a D8 -as tű helyett. A D8 -as érintkezőt használtam arra, hogy a készülék éjszaka 23:00 körül aludjon, és újra 07:00 körül ébredjen. Ez lesz az első pillanat, amikor az idő után elolvassa az időjárási tájékoztatót, mivel a fejlécet olvassa, hogy ellenőrizze az időt. Ebben az eszközben nincs valós idejű óra.

Ha mindez működik, csatlakoztassa az USB -kábelt a Wemos -hoz, és töltse be a szoftvert. Ha minden működik, elkezdheti a doboz építését.

2. lépés: Programtervezés

Programtervezés
Programtervezés

Az én elképzeléseim erről az időjárási eszközről hol

  • Könnyen alkalmazkodik egy másik wifi környezethez
  • Időjárás -előrejelzés és esőjelzés megjelenítése
  • Nincs gomb
  • Nincs hang, egyszerű qui, nincs fuzz

Ezt szem előtt tartva létrehoztam egy programot, amely a WifiManager kóddal kezdődik, amikor nem tud felfedezni egy ismert Wifi hálózatot. Saját hálózatot hoz létre, és megjeleníti a nevet a kijelzőn. Ez lehetőséget ad arra, hogy a Wifi paramétereket saját otthoni hálózatára állítsa be.

A beállítás után 20 másodpercenként mutatja az időjárás -előrejelzést és az eső csapadékát. Ha valamilyen oknál fogva nem lehet leolvasni a következő előrejelzést, akkor egy kis hibaszám jelenik meg a kijelző jobb oldalán; és az előző kép jelenik meg. A következő futtatás során új kísérlet történik az információ lekérésére.

Az időjárási információkat a webhelyről json stílusú üzenetben kapják meg. A benne lévő információkat konvertálja és globális változókba menti. Ily módon leválaszthatjuk az információ lekérését és megjelenítését. Nincs ok arra, hogy 10 percenként gyorsabban lekérjük az időjárást.

Az eső csapadéka még egyszerűbb. Egyszerű szöveges formátumban szolgálják fel, a várható esőmennyiség értéke 0..255; függőleges sáv; egy sor minden sorban. Ezt 5 percenként a következő 2 órában. Az esőértéket intelligens módon szállítják, ahol a kis értékek nagyobb teret engednek a különbségek nagyobb értékekként való megjelenítésére. A használt képlet a következő:

mm óra = kerek (pow (10, (esőérték - 109) / 32) * 10) / 10;

Ne feledje, hogy a "10 -szer, oszd el 10 -vel" trükk annak biztosítására, hogy 1 tizedesjegy legyen a pont mögött. Az elkövetkező 2 órában várható maximális esőmennyiségtől függően 3 skálát használnak a grafikonhoz;

  1. Maximum 5 mm/óra várható
  2. Max 20 mm/óra várható
  3. A maximális értéket az előrejelzés legmagasabb értékéből vesszük

Itt Hollandiában minden idők legmagasabb értéke 80 mm/óra körül van; így ez a skála tökéletesen megfelel. Más országok számára bölcs dolog lehet ezen változtatni.

3. lépés: Programkód

Programkód
Programkód

A szerkesztő beállításai

Az időjárási eszköz szoftverét az Arduino programozási környezetben hozták létre. Az Ön kényelme érdekében itt találja csatolva. Használja úgy, ahogy van; vagy módosítsa az igényeinek megfelelően. A TFT képernyőn megjeleníthető összes szöveg a program tetején van definiálva; ami azt jelenti, hogy könnyen megváltoztathatja saját nyelvére, ha akarja. A Wemos D1 mini -t használtam, de hasonló táblák is működni fognak.

Az Arduino környezetben a következő beállításokat használtam;

  • Alaplap: LOLIN (WEMOS) D1 RA & Mini
  • Feltöltési sebesség: 115200
  • CPU frekvencia: 80 MHz
  • Vakuméret: 4M (nincs SPIFFS) V2 alsó memória letiltva

Szoftveres időzítőket használnak a hurok () egyszerűbbé és olvashatóbbá tételére. Az információ megjelenítése elkülönül az információ letöltésétől. Ily módon más képernyőméreteket stb. Használhatunk anélkül, hogy a teljes programot módosítanánk.

Használja az.ino fájlt, és töltse be az arduino szerkesztőbe. Állítsa be a táblát a szerkesztőben. Csatolja a fejlécfájlt, amely biztosítja, hogy a szükséges C-típusú PROGMEM tömbök szerepeljenek a programban.

SD kártya

Vegye figyelembe, hogy a rendelkezésre álló 1,8 hüvelykes kijelzők többsége rendelkezik SD kártya foglalattal a képernyő hátoldalán. Ez egy szép funkció, amely segít nagy méretű képek tárolásában a kártyán. A legtöbb mikro-vezérlő nem rendelkezik túl sok memóriával a fedélzeten, így ez segít.

Bár sok időt töltök azzal, hogy az SD -kártyát működtessem a kijelzővel, nem tudtam működőképes helyzetet kialakítani. Használhatnám a kijelzőt; sikeresen letölteni egy fájlt az SD -kártyáról, de ezt követően már nem tudtam elérni a TFT képernyőt. A könyvtárak megváltoztatása, a könyvtárak sorrendjének megváltoztatása és a program "levetkőztetése" a legkisebb testre, hogy kizárják az egyéb lehetőségeket, nem segített rajtam.

Csalódottságom kiegészítése; rengeteg példa van az interneten, akik hasonló dolgokat végeznek pozitív eredménnyel, hmmm. Lehet, hogy hardveres probléma van a TFT képernyőn? Vagy valami, amire nem gondoltam? Bármilyen javaslatot szívesen fogadunk a következő kísérlethez. A végén, miután néhány estét eltöltött vele; Úgy döntöttem, hogy elhagyom ezt az utat. Mivel a képek csak 50x50 képpont méretűek (ez egyenként 5000 bájtot eredményez 16 bites szín esetén), az ESP képes ezt egyszerűen tárolni a PROGMEM programban. Szóval ezt a trükköt használtam.

Ez a választás újabb kihívást jelentett. Hogyan lehet olvasható formátumba hozni a BMP képet? Némi keresgélés után fedeztem fel az oldalt Henning Karlsen -től, aki korábban megoldotta ezt a rejtvényt. Létrehozott egy programot, amely-p.webp

4. lépés: Hozza létre a dobozt

Hozza létre a dobozt
Hozza létre a dobozt
Hozza létre a dobozt
Hozza létre a dobozt
Hozza létre a dobozt
Hozza létre a dobozt

Nem ez volt az első doboz, amire szükségem volt. Sok szabványos doboz kapható a beszállítóktól. Egy kis fűrésszel, késsel, fúróval stb. Könnyű lyukat készíteni a kijelzőhöz a dobozban. De soha nem sikerült pontos téglalapot készítenem. Valószínűleg nincs elég készség és/vagy türelem;-)

A megoldás: szerencsém volt. Van egy főiskolám, aki olyan, mint a szuperman, ha technikai dolgokkal kell hegedülni. Ez magában foglalja a 3D tervezést és nyomtatást is. Ezért úgy döntött, hogy szabadidejének nagy részét felajánlja a TFT kijelző és a mikrovezérlő mérésére, és doboz létrehozására körülötte. Minden jól illeszkedik, nézze meg a képeket. Még a kijelző bepattintásait, az USB -csatlakozó lyukat és a mikrovezérlő rögzítésének helyét is tartalmazza.

Köszönöm Arjan ezt a szuper munkát !!! Még jobb, hogy olyan kedves volt, hogy mindenkinek hozzáférést adott a munkájához, így ha letöltöd a fájljait a linkről, és saját 3D nyomtatódhoz használod, akkor ugyanazt a dobozt hozhatod létre tartalommal.

Ajánlott: