Obsah:

Ještě další meteorologická stanice (Y.A.W.S.): 18 kroků (s obrázky)
Ještě další meteorologická stanice (Y.A.W.S.): 18 kroků (s obrázky)

Video: Ještě další meteorologická stanice (Y.A.W.S.): 18 kroků (s obrázky)

Video: Ještě další meteorologická stanice (Y.A.W.S.): 18 kroků (s obrázky)
Video: O létání s SU-7 (František Kružík) 2024, Červenec
Anonim
Ještě další meteorologická stanice (Y. A. W. S.)
Ještě další meteorologická stanice (Y. A. W. S.)

Tento projekt je můj pohled na stále oblíbenější meteorologickou stanici. Můj je založen na ESP8266, OLED displeji s úhlopříčkou 0,96 palce a poli snímačů prostředí BME280. Meteorologické stanice se zdají být velmi oblíbeným projektem. Důl se odlišuje od ostatních tím, že místo oblíbeného snímače teploty a vlhkosti DHT22 používá pole snímačů BME280. BME280 má snímač teploty, vlhkosti a tlaku vzduchu. Využívá také rozhraní I2C. Použitý OLED displej.96”je také I2C. Lze jej zakoupit buď jako I2C nebo SPI nebo obojí. Šel jsem s verzí I2C, abych zjednodušil zapojení. S OLED displejem i BME280 využívajícím I2C a 3,3 V bylo velmi snadné vytvořit kabel „Y“pro připojení obou zařízení k ESP8266. Při vývoji tohoto projektu jsem narazil na několik projektů meteorologických stanic na internetu, které používají ESP8266, stejný OLED displej a BME280. Nejde tedy o originální nápad, ale o originální implementaci.

BME280 poskytuje data o vnitřním prostředí. Informace o venkovním počasí jsou získány z OpenWeatherMap.org. Chcete -li získat přístup k údajům o počasí, budete se muset zaregistrovat na OpenWeatherMap.org. Nabízejí bezplatnou službu, což jsem využil. Pokyny, jak získat klíč, najdete v kroku Jak získat klíč OpenWeatherMap.

Časový server NTP se používá ke zjišťování denní doby a dne v týdnu.

Údaje o počasí, čase a prostředí se zobrazují na OLED displeji. Každá informace má vlastní formátovanou obrazovku. Obrazovky se zobrazí na pět sekund, než se přepnou na jinou. OpenWeatherMap.org je přístupný každých patnáct minut k aktualizaci informací o počasí. BME280 se čte přibližně každých padesát pět sekund. Písmo použité na každé obrazovce se automaticky upraví tak, aby zobrazovalo všechny informace co největším písmem.

ESP8266 je také nastaven jako webový server. Všechny informace o počasí jsou přístupné pomocí prohlížeče z vašeho telefonu, tabletu nebo počítače. Jedna ze zobrazených obrazovek zobrazuje IP adresu webového serveru.

ESP8266 se dodává v různých tvarech a velikostech. Vybírám GEEKCREIT DoIt ESP12E Dev Kit V2. Ten je plně kompatibilní se „standardem“NodeMCU pro samostatné moduly ESP8266. Má integrovaný regulátor 3,3 V, CH340 jako můstek USB-to-Serial a obvod automatického resetování NodeMCU. Můžete libovolně používat jakýkoli modul ESP8266-12, který máte. Uvědomte si, že k jeho naprogramování budete možná muset přidat 3,3V regulátor nebo jiné obvody. Také jsem jeden postavil pomocí Witty Cloud ESP8266. Umožnilo mi to zabalit vše do 1,5 palcové kostky. Po programování se spodní můstková deska USB odpojí. Do otvoru 3,3 V na desce Witty jsem přidal kolíkový konektor s pravým úhlem. Postroj byl vyroben ze dvou čtyřkolíkových skořepin, jedné dvoukolíkové skořepiny a dvou jednopólových skořepin.

Na výše uvedené fotografii je deska, do které je zapojen modul ESP8266, obvodová deska, kterou jsem vyvinul jako oddělovací desku pro ESP8266 a ESP32. Bude přijímat desky ESP8266 s úzkým tělem kompatibilní s NodeMCU, desku Witty Cloud ESP8266 nebo desku ESP32 od společnosti GEEKCREIT. Všechny dostupné piny GPIO jsou pro snadný přístup rozděleny do záhlaví. Zjistil jsem, že většina vývojových desek nikdy nemá dostatek výkonu a uzemnění. Pokaždé, když chcete připojit něco, co potřebujete, alespoň zemnící kolík a většinou kolík k napájení zařízení. Každá řada pinů GPIO je doprovázena napájecím kolíkem 3,3 V a uzemňovacím kolíkem. Používám stejné rozložení, jaké používá First Robotics, síla uprostřed. Líbí se mi toto rozložení, protože když něco zapojíte dozadu, neuvolníte kouzelný kouř. Deska má několik doplňků, infračervený senzor, tlačítkový spínač a tříbarevnou LED. K připojení k jakékoli z těchto funkcí lze použít propojky. Pokud máte zájem o některou z těchto desek ESPxx breakout, kontaktujte mě.

Krok 1: Co budete potřebovat:

Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat
Co budete potřebovat

1 - Deska snímače teploty, vlhkosti a tlaku BME280 I2C

Koupil jsem svůj na Ebay z Číny za přibližně 1,25 $ s dopravou zdarma. K dispozici také od Adafruit nebo Sparkfun

1 - 0,96”, 128x64, I2C OLED displej pomocí ovladače SSD1306

Koupil jsem svůj na Ebay z Číny za přibližně 4,00 $. Moje je bílá. Můžete najít modrou a bílou s oblastí žluté nahoře. Některé jsou prodávány jako SPI a I2C. Možná budete muset přesunout některé odpory, abyste vybrali operaci I2C. Důležitou součástí je, že používá čip ovladače SD1306. K dispozici také od společnosti Adafruit.

1-NodeMCU ESP8266-12 s CH340

Můžete použít libovolný požadovaný modul ESP8266-12. Dávám přednost těm s CH340 USB-to-Serial mostem. Před několika lety došlo k vyrážce falešných můstkových čipů FTDI a SI, takže už nevěřím ničemu jinému než CH340.

2 - DuPont 4 pin, rozteč 2,54 mm (0,1 palce)

2 - DuPont 2 piny, rozteč skořepin 0,1 palce (2,54 mm)

12-Samice krimpování DuPont pro drát 22-28 AWG

Svůj dostávám na Ebay. Můžete také použít Molex nebo jakoukoli značku, kterou upřednostňujete. Krimpovací kolíky nebo IDC Volba je na vás. Dávejte pozor, abyste pro své mušle koupili správné kolíky. Nejsou kombinovány. Můžete také pouze připájet vodiče k deskám a eliminovat konektory. Pokud používáte krimpovací kolíky, budete potřebovat krimp. Nepokoušejte se krimpovat pomocí kleští. To nefunguje.

1 - 5V, 1A minimální nástěnný napájecí zdroj.

Ty jsou levné a dostupné na Ebay. Získejte jeden s konektorem micro USB nebo cokoli, co se hodí k vaší desce ESP8266.

Budete také potřebovat osm kusů 22-28 AWG drátu, abyste vše spojili dohromady. Nebo to všechno můžete jednoduše přilepit na kus desky. Je to na tobě.

Zahrnul jsem obrázek toho, co bylo použito ke stavbě meteorologické stanice pomocí Witty Cloud ESP8266. Jeden obrázek podrobně popisuje, kam přidat kolík záhlaví v pravém úhlu k odběru 3,3 V. Jedna ze dvou skořepin je nahrazena dvěma skořepinami. Uzemňovací a 3,3V vodiče jsou nacpané do jednoho kolíkového pláště.

Pomocí tohoto odkazu získáte soubory zdrojového kódu z úložiště GitHub; Meteorologická stanice ESP8266. Složka zip nebo klonovaná složka bude mít složku WeatherStation, která obsahuje WeatherStation.ino a BME280.h. Toto jsou soubory zdrojového kódu. Existuje také několik souborů pdf. Soubory pdf mají téměř stejné informace jako tento návod.

Krok 2: Nástroje:

Nástroje
Nástroje
Nástroje
Nástroje

Po vyzkoušení mnoha značek krimpovacích kleští jsem zjistil, že japonský inženýr PA-21 nebo PA-09 funguje nejlépe pro mužské a ženské krimpy DuPont. Je k dispozici na Ebay nebo Amazon. Buď bude fungovat pro piny DuPont. PA-09 také provede kolíky pro konektory JST běžně používané na bateriích LiPo. Zde je odkaz na video o tom, jak používat tvarovače Engineer s krimpy DuPont; Jak používat drtiče PA-21

Instructables nedávno prošel skvělým návodem k použití krimpovacích nástrojů Weierli Tools SN-28B s kolíky a skořepinami DuPont. Můžete si jej prohlédnout zde; Udělejte si dobrý Dupont Pin-Crimp KAŽDOU dobu!

Krok 3: Vytvořte postroj:

Vytvořte postroj
Vytvořte postroj
Vytvořte postroj
Vytvořte postroj

Klíčem k tomuto projektu je kabelový svazek. Jedná se o základní čtyřvodičový kabel „Y“. Nahoře je obrázek postroje, který jsem vyrobil. OLED displej a pole snímačů BME280 mají stejný vývod. To znamená, že dva čtyři kolíkové pláště jsou po vložení zvlněných vodičů totožné. Vytvořil jsem svůj postroj s dvojitě zvlněnými dráty jdoucími do dvou dvou kolíkových skořepin, které se připevňují k desce ESP8266. Místo toho jste se mohli rozhodnout nacpat dvojitě zvlněné dráty do jednoho ze čtyř kolíkových pouzder, což bude vypadat jako řetězové spojení. Buď bude fungovat.

  1. Uřízněte všechny své dráty na délku. Rád používám pro každý drát různé barvy; červená pro 3,3 V, černá pro zem, žlutá pro SCL a zelená pro SDA.
  2. Odizolujte jeden konec každého drátu asi 0,1 palce.
  3. Otočte prameny dohromady a přidejte ženské zvlnění.
  4. Jakmile jsou všechny vodiče na jednom konci zvlněny, odizolujte všechny dráty asi 0,2 palce.
  5. Twistujte prameny dvou drátů stejné barvy dohromady.
  6. Po zkroucení ořízněte asi 0,1 palce a přidejte ženské krimpování.
  7. Když jsou všechny páry drátů zvlněny, je čas vložit zvlněné konce do skořepin.
  8. Dva čtyři kolíkové pláště jsou plněné zleva doprava červenou, černou, žlutou, zelenou nebo 3,3 V, Gnd, SCL, SDA.
  9. Jeden ze dvou kolíků získá červený a černý vodič.
  10. Další dva kolíkové pláště získají žlutý a zelený vodič.

Krok 4: Tip:

Spropitné
Spropitné
Spropitné
Spropitné
Spropitné
Spropitné

Zjistil jsem, že když použiji 28 AWG drát s krimpovacími kolíky, které mají tendenci odpadávat. Abych tomu zabránil, je odizolovat konec drátu dvakrát déle než obvykle. Otočte odkryté dráty dohromady. Poté zkroucený drát přeložte, aby se tloušťka zdvojnásobila. Nyní, když jej zvlním, je drát dostatečně silný, aby pevně držel.

Krok 5: Propojte to všechno dohromady:

Propojte to všechno dohromady
Propojte to všechno dohromady
Propojte to všechno dohromady
Propojte to všechno dohromady
Propojte to všechno dohromady
Propojte to všechno dohromady
  1. Připojte čtyři kolíkové konektory k OLED displeji a deskám BME280.
  2. Zarovnejte červený vodič s kolíky Vcc a 3V3.
  3. Připojte dva kolíkové červeno/černé pláště k dvojici pinů 3V3 (3,3V) a GND na desce ESP8266. Na desce jsou tři místa, kde jsou piny 3V3 a GND adjecentní. Vyhněte se pinům Vin (5V) a GND, protože ty uvolní kouzelný kouř z vašich desek OLED a BME280. Zajistěte, aby byl červený vodič připojen ke kolíku 3V3.
  4. Zapojte žluto/zelený dvoukolíkový plášť na D1 a D2 na desce ESP8266. Žlutý vodič (SCL) by měl být na D1.

Znovu zkontrolujte připojení. Pokud vše vypadá dobře, jste připraveni zapnout desku ESP8266.

Krok 6: Jak získat klíč OpenWeatherMap

Jak získat klíč OpenWeatherMap
Jak získat klíč OpenWeatherMap

K získání informací o aktuálním počasí budete potřebovat klíč API pro přístup na web OpenWeatherMap.org. Dalších několik kroků podrobně popisuje, jak se zaregistrovat pomocí OpenWeatherMap.org a získat klíč API.

Pomocí tohoto odkazu na OpenWeatherMap.org.

Klikněte na API v polovině horní části webové stránky.

Krok 7: Jak získat klíč OpenWeatherMap, přihlásit se k odběru

Jak získat klíč OpenWeatherMap, přihlásit se k odběru
Jak získat klíč OpenWeatherMap, přihlásit se k odběru

Na levé straně v části Aktuální údaje o počasí klikněte na tlačítko Přihlásit se k odběru.

Krok 8: Jak získat klíč OpenWeatherMap, získat klíč API

Jak získat klíč OpenWeatherMap, získat klíč API
Jak získat klíč OpenWeatherMap, získat klíč API

Klikněte na Get APIkey and Start ve sloupci Free.

Krok 9: Jak získat klíč OpenWeatherMap, registrace

Jak získat klíč OpenWeatherMap, registrace
Jak získat klíč OpenWeatherMap, registrace

Klikněte na tlačítko Registrace v části Jak získat klíč API (APPID).

Krok 10: Jak získat klíč OpenWeatherMap, vytvořit účet

Jak získat klíč OpenWeatherMap, vytvořit účet
Jak získat klíč OpenWeatherMap, vytvořit účet

Vyplňte všechna pole. Po dokončení zaškrtněte políčko Souhlasím s podmínkami služby a zásadami ochrany osobních údajů. Poté klikněte na tlačítko Vytvořit účet.

Zkontrolujte, zda váš e -mail neobsahuje zprávu z OpenWeatherMap.org. E -mail bude mít váš klíč API. Abyste získali aktuální počasí, budete muset zkopírovat klíč API do zdrojového kódu meteorologické stanice.

Bezplatná služba OpenWeatherMap.org má určitá omezení. Především jde o to, že k němu nemůžete přistupovat častěji než jednou za deset minut. To by neměl být problém, protože počasí se tak rychle nemění. Ostatní omezení souvisí s dostupnými informacemi. Kterékoli z placených předplatných poskytne podrobnější informace o počasí.

Krok 11: Nastavení Arduino IDE:

Nastavte IDE Arduino
Nastavte IDE Arduino

Vývoj programu byl proveden pomocí Arduino IDE verze 1.8.0. Zde si můžete stáhnout nejnovější Arduino IDE; Arduino IDE. Web Arduino má vynikající pokyny, jak nainstalovat a používat IDE. Podporu pro ESP8266 lze do Arduino IDE nainstalovat podle pokynů uvedených v tomto odkazu: ESP8266 Addon to Arduino. Na webové stránce klikněte na tlačítko „Klonovat nebo stáhnout“a vyberte „Stáhnout zip“. Soubor ReadMe.md obsahuje pokyny, jak přidat podporu ESP8266 do Arduino IDE. Jedná se o prostý textový soubor, který můžete otevřít v libovolném textovém editoru.

Desky ESP8266 se dodávají ve všech velikostech, tvarech a používají různé můstkové čipy USB-to-Serial. Dávám přednost deskám, které používají můstkový čip CH340. Před několika lety FTDI, SI a další unavili levné klony, které prohlašovaly, že jsou jejich součástí. Výrobci čipů změnili svůj kód ovladače tak, aby fungoval pouze s jejich originálními součástmi. To vedlo k velké frustraci, protože lidé zjistili, že mosty USB-Serial již nefungují. Nyní se několik dní držím mostů USB-to-Serial na bázi CH340, abych se vyhnul nákupu desek, které mohou nebo nemusí fungovat. V každém případě budete muset najít a nainstalovat správný ovladač můstkového čipu použitého na vaší desce. Toto je odkaz na oficiální stránky pro ovladače CH340; CH341SER_EXE.

ESP8266 nemá vyhrazený hardware I2C. Všechny ovladače I2C pro ESP8266 jsou založeny na bitovém bangingu. Jednou z lepších knihoven ESP8266 I2C je knihovna brzo_I2C. Byl napsán v montážním jazyce pro ESP8266, aby byl co nejrychlejší. Zobrazovací knihovna OLED, kterou používám, používá knihovnu brzo_I2C. Přidal jsem kód pro přístup k poli snímačů BME280 pomocí knihovny brzo_I2C.

Knihovnu OLED můžete získat zde: Knihovna ESP8288-OLED-SSD1306.

Knihovnu brzo_I2C můžete získat zde: Brzo_I2C Library.

Obě knihovny bude nutné nainstalovat do vašeho Arduino IDE. Web Arduino obsahuje pokyny k instalaci knihoven zip do IDE zde: Jak nainstalovat knihovny Zip.

Tip: Po instalaci balíčku desek ESP8266 a knihoven zavřete Arduino IDE a znovu jej otevřete. Tím zajistíte, že se desky a knihovny ESP8266 zobrazí v IDE.

Krok 12: Vyberte si nástěnku:

Vyberte si nástěnku
Vyberte si nástěnku

Otevřete Arduino IDE. Pokud jste tak dosud neučinili, nainstalujte doplněk ESP8266, knihovnu brzo_i2c a knihovnu ovladačů OLED.

Klikněte na „Nástroje“na horním panelu nabídek. Přejděte dolů z rozevírací nabídky na místo, kde je uvedeno „Board:“. Přejděte do rozbalovací nabídky „Správce desek“a přejděte dolů na; „NodeMCU 1.0 (modul ESP-12E)“. Kliknutím na něj jej vyberete. Všechna ostatní nastavení ponechte na jejich výchozí hodnotě.

Krok 13: Vyberte sériový port:

Vyberte sériový port
Vyberte sériový port

Klikněte na „Nástroje“na horním panelu nabídek. Přejděte dolů z rozevírací nabídky na místo, kde je uvedeno „Port“. Vyberte port, který je vhodný pro váš počítač. Pokud se váš port nezobrazí, buď není vaše deska zapojena, nebo jste nenačetli ovladač pro svůj můstkový čip nebo vaše deska nebyla zapojena, když jste otevřeli Arduino IDE. Jednoduchou opravou je zavřít Arduino IDE, zapojit desku, načíst všechny chybějící ovladače a znovu otevřít Arduino IDE.

Krok 14: WeatherStation.ino

K získání zdrojového kódu můžete použít buď tlačítka Stáhnout výše, nebo použít tento odkaz na GitHub; Meteorologická stanice ESP8266.

Soubory WeatherStation.ino a BME280.h musí být ve stejné složce. Název složky musí odpovídat názvu souboru.ino (bez přípony.ino). Toto je požadavek Arduina.

Krok 15: Upravte WeatherStation.ino

Klikněte na "Soubor" na horním panelu nabídek. Klikněte na „Otevřít“. V dialogovém okně Otevřít soubor najděte složku WeatherStation a vyberte ji. Měli byste vidět dvě karty, jednu pro WeatherStation a jednu pro BME280.h. Pokud nemáte obě karty, otevřeli jste špatnou složku nebo jste nestáhli oba soubory nebo jste je neuložili do správné složky. Zkus to znovu.

Budete muset upravit soubor WeatherStation.ino a přidat SSID a heslo pro vaši WiFi síť. podívejte se kolem řádku 62 na následující;

// sem vložte SSID a heslo pro vaši WiFi síť

const char* ssid = "yourssid"; const char* heslo = "heslo";

Nahraďte „yourssid“SSID vaší WiFi sítě.

Nahraďte „heslo“přístupovým klíčem pro vaši WiFi síť.

Budete také muset přidat klíč OpenWeatherMap a PSČ, kde žijete. Podívejte se kolem řádku 66 na následující;

// sem vložte svůj klíč OpenWeatherMap.com a PSČ

const char* owmkey = "yourkey"; const char* owmzip = "yourzip, country";

Nahraďte „yourkey“klíčem získaným z OpenWeatherMap.org.

Nahraďte „yourzip, country“PSČ a zemi. Po vašem PSČ by měla následovat čárka a vaše země („10001, my“).

Dále musíte nastavit časové pásmo a povolit/zakázat letní čas (DST). Podívejte se kolem řádku 85 na následující;

// Vrácený hrubý čas je v sekundách od roku 1970. Chcete -li upravit odečtení časových pásem

// rozdíl v sekundách pro vaše časové pásmo. Záporná hodnota // odečte čas, kladná hodnota přičte čas #definovat TZ_EASTERN -18000 // počet sekund za pět hodin #definovat TZ_CENTRAL -14400 // počet sekund za čtyři hodiny #definovat TZ_MOUTAIN -10800 // počet sekund za tři hodiny #define TZ_PACIFIC -7200 // počet sekund za dvě hodiny

// Upravte čas pro své časové pásmo změnou TZ_EASTERN na jednu z dalších hodnot.

#define TIMEZONE TZ_EASTERN // změňte toto na své časové pásmo

Existuje skupina příkazů #define, které definují časový posun pro různá časová pásma. Pokud je tam vaše časové pásmo, nahraďte „TZ_EASTERN“v definici „TIMEZONE“. Pokud vaše časové pásmo není uvedeno, budete si jej muset vytvořit. Server NTP udává čas jako greenwichský čas. Abyste dorazili na místní čas, musíte buď přidat nebo odečíst určitý počet hodin (v sekundách). Stačí zkopírovat jeden z příkazů „#define TZ_XXX“a poté změnit název a počet sekund. Poté změňte „TZ_EASTERN“na nové časové pásmo.

Musíte se také rozhodnout, zda chcete použít letní čas nebo ne. Chcete -li DST deaktivovat, nahraďte „1“v následujícím řádku „0“;

#define DST 1 // nastaveno na 0 pro deaktivaci letního času

Je -li povoleno, DST automaticky posouvá nebo zpomaluje čas o jednu hodinu, je -li to vhodné.

Krok 16: Nahrajte kód do svého ESP8266

Nahrajte kód do svého ESP8266
Nahrajte kód do svého ESP8266

Klikněte na ikonu kruhové šipky směřující doprava, která je těsně pod položkou „Upravit“v horním panelu nabídek. Tím se zkomplikuje kód a nahraje se na vaši nástěnku. Pokud se vše zkompiluje a nahraje správně, po několika sekundách by se měl rozsvítit OLED displej a měla by se zobrazit zpráva o připojení.

Krok 17: Jak zobrazit web s daty o počasí

Jak zobrazit web s daty o počasí
Jak zobrazit web s daty o počasí

Na výše uvedeném obrázku je webová stránka obsluhovaná meteorologickou stanicí. Můžete se k němu dostat pomocí počítače, telefonu nebo tabletu. Jednoduše otevřete prohlížeč a jako adresu URL zadejte IP adresu meteorologické stanice. IP adresa meteorologické stanice se zobrazí na jedné z obrazovek meteorologické stanice. Kliknutím na Obnovit stránku aktualizujete informace.

Krok 18: Gratulujeme, jste hotovi

To je vše. Nyní byste měli mít funkční meteorologickou stanici. Dalším krokem by mohlo být navrhnout a vyrobit pouzdro pro umístění vaší meteorologické stanice. Nebo možná chcete přidat několik dalších obrazovek, které budou ukazovat chladný vítr, rosný bod, časy východu nebo západu slunce nebo graf změn barometrického tlaku nebo předpovídat počasí pomocí barometrického tlaku. Bavte se a užívejte si.

Doporučuje: