Obsah:
- Krok 1: Díly a materiály
- Krok 2: Elektrický design
- Krok 3: Mechanický návrh
- Krok 4: Sestava rámu: Face & Base
- Krok 5: Sestavení elektroniky a senzoru
- Krok 6: Konfigurace Twitteru
- Krok 7: Software a konfigurace
- Krok 8: Příspěvek do úložiště senzorů
Video: Meteorologická stanice Tweeting: 8 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Chtěli jste někdy sledovat aktuální povětrnostní podmínky ve vašem městě, uhlíkovou stopu, hladinu hluku a znečištění? Chcete být Climate Change Crusader nebo si nastavit vlastní Tweetingovou meteorologickou stanici a sdílet své místní povětrnostní podmínky s celým světem?
Seznamte se s Tweeting Weather IoT Station aka TWIST - DIY, open -source platforma pro monitorování životního prostředí a získávání meteorologických dat. Účelem TWIST je, aby jednotlivci a komunity mohli shromažďovat data o tom, co se ve skutečnosti děje v jejich prostředí, a sdílet tato data na sociálních médiích, jako je Twitter.
- TWIST je platforma založená na internetu věcí (IoT).
- Mozek TWIST je Intel Edison Board.
- TWIST je kompatibilní s řadou senzorů.
- Veškerý kód, návrhové soubory (schémata a rozložení DPS) jsou Open-Source. To znamená, že kdokoli může přispět na platformu TWIST sdílením kódu a schémat pro různé senzory.
TWIST se skládá ze tří technologických vrstev:
První vrstva je hardwarová deska, která obsahuje všechny senzory počasí a prostředí známé jako 'Sensor Board'. Jak název napovídá, nese senzory, které měří složení vzduchu, teplotu, vlhkost, déšť. Lze také přidat další senzory, jako je seizmická aktivita, UV index, barometrický tlak, nadmořská výška, lux (svítivost), hladiny zvuku, rychlost a směr větru atd. Jakmile je senzorová deska nastavena, je schopna streamovat data naměřená senzory do druhé vrstvy. Druhá vrstva je Intel Edison Board, která přijímá data ze Sensor Board, zpracovává je a odesílá do další vrstvy. Třetí vrstva spojuje váš Edison Board s internetem přes Wi-Fi pomocí bezdrátového modulu na Edisonově desce a Tweet je Aktuální počasí a podmínky prostředí.
Napájení zařízení může být zajištěno solárním panelem nebo síťovým adaptérem.
Úložiště ovládaná verzemi
Všechny tři technologické vrstvy TWIST jsou Open-Source, a proto jsou všechny soubory, které používáme pro kód, vývoj PCB, mechanický design atd., Snadno dostupné v našem úložišti Github.
Přihlášky do soutěže
Intel IoT Invitational
Chtěl bych poděkovat společnosti Intel+Instructables za poskytnutí desky Intel Edison Board. Mám v plánu vytvořit mnoho dalších instrukcí souvisejících s IoT pomocí desky Edison.
#iotweatherstn
Pokud vytváříte TWIST, nezapomeňte tweetovat počasí pomocí #iotweatherstn. #iotweatherstn může být hashtag, který používají všechny meteorologické stanice napájené z internetu věcí.
Krok 1: Díly a materiály
QuantityPartDetails 1
Intel Edison
s Arduino Breakout Board
1
Senzor hořlavého plynu MQ2
1
YL-83
Dešťový senzor
1
SL-HS-220
Snímač teploty a vlhkosti
1
Odpor
32 tis
4,7 tis
3 Kovový odstup 1 palec
1
Odpor
32 tis
4,7 tis
2
Dřevěný list velikosti A4
Lze později snížit na velikost
3
Kovová patka
1 palec
Krok 2: Elektrický design
Napájení
Celý systém je napájen z 5V 1A zdroje. Senzory (teplota, vlhkost, déšť, plyn) čerpají přibližně 200 mA, Edison kolem 500 mA, protože celkový požadovaný proud je menší než 1amp, napájení 1 amp by mělo fungovat dobře. Vestavěná zelená LED na digitálním pinu 13 Edison Board slouží k zobrazení stavu napájení.
Ovládání Intel Edison spouští show pro TWIST. Edison je upevněn na desce Arduino, která usnadňuje čtení digitálních a analogových signálů ze senzorů. Edison je připojen k 5V liště pomocí kabelu micro USB. Edison má vestavěné Wi-Fi rádio, které mu umožňuje připojení k Twitteru bez potřeby dalšího hardwaru.
Hodiny reálného času (RTC)
Protože časové razítko automaticky prováděné Twitterem pro každý tweet má rozlišení omezené na celkový počet dní od doby tweetování, používají se hodiny v reálném čase k přesnému časovému razítkování data a času v hodinové minutě- Druhý formát. Hodinami reálného času používanými v platformě TWIST je modul DS-1307 RTC.
Senzory Nejzákladnější nastavení tohoto systému má čtyři senzory (teplota, vlhkost, déšť, plyn), které se připojují k Edisonu. Lze přidat další senzory, jako je Noise, Wind atd. Každý senzor je napájen přímo z kolejnice 5V a má svůj signální pin připojený k analogovým pinům A0 až A2 a digitálním pinem 2 na desce Edison Breakout. Senzory také mají každý potenciometr pro nastavení citlivosti namontovaný na každé desce senzoru; MQ-2 je snímač hořlavých plynů (zkapalněný ropný plyn, propan, vodík a metan), který vydává analogové napětí úměrné koncentraci plynů v částech na milion. SL-HS-220 má termistor, který udává hodnotu teploty. Protože je výstup termistoru nelineární, je v úložišti senzorů uvedena odpovídající teplotní tabulka. Termistor vyžaduje obvod děliče napětí, když je připojen k Edison Board, jak je znázorněno na schématu zapojení. SL-HS-220 má také vestavěný vlhkoměr, který měří vlhkost a vydává analogové napětí, které odpovídá pevné hodnotě vlhkosti. Tabulka vlhkosti a napětí je také uvedena v úložišti senzorů. Běžnou náhradou za SL-HS-220 je snímač DHT11. Dešťový senzor/vodní senzor má potenciometr, který je nastaven tak, aby poskytoval digitální výstup pro určité množství deště, jehož citlivost může nastavit uživatel.
Meteorologická stanice.fzz
Krok 3: Mechanický návrh
Tělo TWIST je vyrobeno ze dvou desek z dřevěných plechů. Přestože jsem použil překližku 1/4 ", design lze sestavit z jakéhokoli listového materiálu, protože rozestup (udržovaný 1" hliníkovými distančními sloupky) je jediným kritickým prvkem. Výše jsem připojil vektorové soubory ke stažení.
Laserové řezání
Pro všechny, kteří si přejí řezat obě desky laserem, jsem níže připojil soubory laserových řezaček ke stažení. Ve svém designu také obsahuje další snímač kvality vzduchu. V závislosti na vašem výběru tedy můžete použít buď senzorový modul MQ2, nebo senzorový modul kvality vzduchu.
Krok 4: Sestava rámu: Face & Base
Čelní deska
Senzory zapadají do odpovídajících otvorů a výřezů a lze je upevnit pomocí šroubů nebo lepidla.
Základní deska
Distanční sloupky desky Edison jsou našroubovány na základní desku. Analogově digitální převodník (ADC), který je připojen k dešťovému senzoru, lze také přišroubovat na základní desku.
Na základní desku lze také přišroubovat další součásti, jako jsou bzučáky nebo obvod regulátoru napětí pro solární vstup.
Základní deska a čelní deska jsou od sebe odděleny odstupem 1.
Krok 5: Sestavení elektroniky a senzoru
Napájení
Napájení systému zajišťuje nástěnný adaptér se standardním válcovým konektorem, který je připojen přímo ke konektoru Edison's Barrel. Systém lze také napájet přes USB port na desce Edison. Desku můžete také napájet z externího solárního panelu.
Senzory
Senzory jsou připojeny k rozpojovacím deskám pomocí konektorů s vnějším závitem, a proto je lze přímo připojit k Edisonu pomocí propojovacích kabelů typu male-to-female.
Krok 6: Konfigurace Twitteru
Abychom mohli tweetovat, používáme aplikaci třetí strany vyvinutou společností NeoCat, která získává token Twitteru, který budete potřebovat k tweetu s vaší deskou Edison. Tokeny lze také získat z webové stránky Twitter Developers.
Chcete -li tedy začít, navštivte web společnosti NeoCat a sledujte jeho návod, jak získat knihovnu twitteru a svůj twitterový token. Jak NeoCat zmínil na svých stránkách, nezneužívejte prosím tuto službu. Udržujte své tweety řídké. Pokud potřebujete něco, co tweetuje každých 6 sekund, měli byste si nastavit vlastní server a twitterovou aplikaci, a proto kód, který jsem napsal, zajišťuje, že se server NeoCat nepřetěžuje (tweety TWIST každých 6 hodin).
Knihovna používá tento web NeoCat jako proxy server pro věci OAuth. Váš tweet nemusí být použit při údržbě webových stránek tohoto NeoCatu. Zdá se, že Twitter odmítá opakované tweety se stejným obsahem (vrací chybu 403).
Twitter Token
Knihovna tweetu Arduino
Krok 7: Software a konfigurace
Než začnete s kódováním, postupujte podle pokynů k instalaci Intel pro Intel Edsion.
Program je skica Arduina běžící na Edisonu. Níže jsem vysvětlil každý z hlavních bloků kódu.
Kód obsahuje některé předdefinované konstanty, deklarace pinů a několik prohlášení o sériovém tisku, které pomáhají při řešení potíží.
Zpoždění tweetu
Protože Twitter filtruje tweety, které mají stejný obsah a jsou tweetovány během krátké doby mezi každým z nich, bylo mezi každým tweetem nastaveno standardní 3hodinové (10800000 milisekundové) zpoždění.
tweetMessage ();
zpoždění (10800000);
Zadejte Casting
Mnoho údajů, které získáme ze senzorů, je v datovém typu 'int' nebo 'float'. Protože ale tyto hodnoty tweetujeme, musíme je převést na datový typ 'String'. K tomu používáme speciální techniku castingu.
char *dtostrf (dvojitý val, šířka znaku se znaménkem, znak bez znaménka, char *sout) {
char fmt [100]; sprintf (fmt, "%%% d.%df", width, prec); sprintf (sout, fmt, val); návrat sout; }
Twitter Token
Token twitteru je vytvořen na webu NeoCat a měl by být vložen do prostoru tokenu zde.
void tweetMessage () {
Twitter twitter („ZADEJTE TWITTER TOKEN ZDE“);
Tweetingové hodnoty senzoru
Abychom mohli tweetovat hodnotu senzoru, nejprve zahrneme typ senzoru; Příklad: „Vlhkost“. Poté následuje deklarace znaků a řádek kódu vyžadovaný pro casting. Dále přidáme příkaz pro měrnou jednotku; Příklad: "%RH". Podobným způsobem můžeme i nadále přidávat hodnoty jiných senzorů.
vlhkost vzduchu(); plovoucí vlhký;
// Twitter zpráva String stringMsg = "Vlhkost:"; znak tmp [10]; dtostrf (vlhký, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";
Poloha a označení meteorologické stanice
Dále označíme polohu (město, lokalita atd.) A další značky jako #iotweatherstn.
stringMsg += "#Mumbai #Bandra #iotweatherstn";
Hodiny reálného času (RTC)
Jak již bylo vysvětleno dříve, TWIST může také tweetovat data hodin v reálném čase. Níže je uveden příklad bloku parametrů 'RTC' kódu RTC. Funkce Real Time Clock je na platformě TWIST volitelná, protože modul je dodáván samostatně. Proto je v úložišti TWIST vytvořena samostatná větev pro kód a schémata větve hodin reálného času.
TwistDateTime (); DateTime now = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; Řetězec stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg += ds1307day; stringMsg += "/";
140 znaků
Tento blok kódu pokrývá pole řetězců na pole 140 znaků připravené k tweetu.
char msg [140];
stringMsg.toCharArray (msg, 140);
Odstraňování problémů se zprávami a připojením
Tento blok kódu vytiskne několik řádků textu v Serial Monitoru, což uživateli pomůže zkontrolovat stav zprávy a tweetu.
// Tweetujte toho hlupáka!
if (twitter.post (msg)) {int status = twitter.wait (); if (status == 200) {Serial.println ("OK."); Serial.println („Tweetovaná zpráva“); } else {// Test připojení Serial.print ("failed: code"); Serial.println ("Zpráva nebyla tweetována"); Serial.println (stav); }} else {Serial.println ("připojení se nezdařilo."); Serial.println ("Zpráva nebyla tweetována"); }
Všechny ostatní bloky kódu jednoduše převádějí analogové nebo digitální čtení ze senzorů na použitelná data.
Kód lze stáhnout z zde nebo z hlavního úložiště:
Meteorologická stanice.ino
Krok 8: Příspěvek do úložiště senzorů
Jste programátor, inženýr nebo designér, který má skvělý nápad na novou funkci v TWIST? Možná máte dobrý nápad na opravu chyby? Nebojte se chytit náš kód, schémata a soubory CAD z Githubu a pohrát si s ním.
TWIST GitHub
Druhá cena v Intel® IoT Invitational
Doporučuje:
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: 9 kroků (s obrázky)
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: LineaMeteoStazione je kompletní meteorologická stanice, kterou lze propojit s profesionálními senzory od společnosti Sensirion a také s některou komponentou Davis Instrument (Rain Gauge, Anemometer) Projekt je zaměřen jako meteorologická stanice pro vlastní potřebu, ale vyžaduje pouze
Fanair: meteorologická stanice pro váš pokoj: 6 kroků (s obrázky)
Fanair: meteorologická stanice pro váš pokoj: Existuje nespočet způsobů, jak zjistit aktuální počasí, ale pak znáte počasí pouze venku. Co když chcete znát počasí uvnitř vašeho domu, v konkrétní místnosti? To se pokouším vyřešit tímto projektem. Fanair používá více
Jednoduchá meteorologická stanice využívající ESP8266 .: 6 kroků (s obrázky)
Jednoduchá meteorologická stanice využívající ESP8266 .: V tomto Instructable budu sdílet, jak pomocí ESP8266 získávat data jako teplota, tlak, klima atd. A data z YouTube jako předplatitelé & Celkový počet zhlédnutí. a zobrazte data na sériovém monitoru a zobrazte je na LCD. Data budou f
Meteorologická stanice NaTaLia: Meteorologická stanice poháněná solární energií Arduino provedla správnou cestu: 8 kroků (s obrázky)
Meteorologická stanice NaTaLia: Meteostanice poháněná solární energií Arduino Správně: Po 1 roce úspěšného provozu na 2 různých místech sdílím své plány projektů solární elektrárny a vysvětluji, jak se vyvinuly do systému, který může skutečně přežít po dlouhou dobu období ze sluneční energie. Pokud budete dodržovat
DIY meteorologická stanice a WiFi senzorová stanice: 7 kroků (s obrázky)
DIY meteorologická stanice a WiFi senzorová stanice: V tomto projektu vám ukážu, jak vytvořit meteorologickou stanici spolu se senzorovou stanicí WiFi. Senzorová stanice měří údaje o místní teplotě a vlhkosti a odesílá je prostřednictvím WiFi do meteorologické stanice. Meteorologická stanice poté zobrazí t