Obsah:
Video: ESP32 Scraper-parser-mailer a Live Mapper: 4 kroky (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
Ahoj světe! Toto je můj první Instructable! Jsem Marco z Grosseto Itálie, nejsem vývojář, nejsem elektronický inženýr, ale jsem ekologický průvodce v našem místním přírodním parku (přírodní park Maremma).
V mém družstvu hodně pracujeme s výlety na kánoích, naturalistickými a klidnými výlety po řece Ombrone za pozorováním ptáků a trochou relaxace.
Řeka Ombrone je však také známá svým charakteristickým druhem toku: od letního „nulového“po podzimní a zimní tok několika tisíc metrů krychlových vody za hodinu.
Z tohoto důvodu je řeka Ombrone neustále monitorována vynikající regionální hydrometrickou službou (SIR) s fantastickým webem, který shromažďovaná data zpřístupňuje.
Nyní čekáme na konec sezóny a první podzimní povodně na odstranění doku a kánoí…
Ale když začneme mluvit o škrábání při analýze esp32ing atd.? ještě chvilku
Během italského uzamčení jsem udělal první lekci arduino blink, cool … a pokračoval jsem v hraní se senzory a arduino C. Pokud vám můj kód přijde hrubý nebo plný nesmyslných logických mezer, vezměte to v úvahu!
Dělal jsem spoustu věcí jen proto, abych ztrácel čas, ale s tímto neustálým rizikem záplav jsem se rozhodl udělat něco skvělého: díky ESP32 s arduino form factor (Wemos d1 r32), který jsem držel zabalený měsíce, protože jsem si myslel, že je „obtížný“„Opravdu jsem měl spoustu uspokojení:
Udělal jsem škrabku, která přináší a analyzuje data z webové stránky SIR a zobrazuje proměnné získané na levném LCD i2c a blikáním jasu a frekvence na některých LED diodách na realistické mapě.
takže pokud přijde povodeň z horské strany, budu varován zvyšujícím se jasem (změna úrovně) a rostoucí frekvencí (změna úrovně za jednu hodinu) LED diod na mapě … ale ESP32 může také odesílat e -maily! Proč tedy pro to neudělat funkci?
Pojďme se nyní podívat na níže uvedený kód!
Zásoby
- Deska založená na ESP32: Použil jsem Wemos d1 r32, protože mají ženské kolíky a je jednodušší se s nimi manipulovat
- LED diody, červená je více „výstražná jako“
- I2C 16x2 LCD je pouze modrý, ale zelená je stylovější
- levná korková deska
- noční čas (volitelně)
Krok 1: Kód
online Našel jsem pouze parní návody, které používají externí weby k analýze dat, takže jsem zkusil otestovat sílu jader esp32 analyzujících data přímo na desce … bez problémů!
takže pokud se podíváte na stránku SIR, zdroj pochopí, jak funguje: naštěstí pro zobrazení svých dat používá hodnoty „oddělené čárkou“, takže s tímto kódem hledám hydrografickou stanici (kód TOSnumber) a spočítám počet čárek (jako oddělovač), které obsahují požadovanou hodnotu (a uložte ji jako proměnnou), poté ji přemapujte jako LED jas a čas v milisekundách pro blikání „úrovně variace“
Jádro této škrabky je na kartě
ind = payload.indexOf ("TOSstation_number"); // získejte pozici (ind), odkud začněte počítat čárky
Řetězec my_var = getValue_ind (užitečné zatížení, ',', 8); // kde 8 je osmá buňka definovaná čárkami (oddělovač)
„užitečné zatížení“je to, co získám z webu, který byl dříve vyčištěn z „citací“a „& nbsp“;
a funkce getValue_ind, která je na hlavní kartě
Řetězec getValue_ind (Řetězcová data, oddělovač znaků, int index) {
int nalezeno = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1; for (int i = ind; i <= maxIndex && found <= index; i ++) {// from ind position if (data.charAt (i) == separator || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} návrat nalezen> index? data.substring (strIndex [0], strIndex [1]): ""; }
upraveno z
kód žádá o stránku každých 15 minut, je to asi 44 kB, nemyslím si, že je to velká zátěž pro servery a pro ESP32.. Abych se vyhnul přílišnému posouvání, rozdělil jsem program na různé funkce, přečtěte si komentáře
zde je vkládání kódu opravdu nepořádek … vkládám soubory.ino přímo
Použil jsem funkci záložek v arduino IDE, takže mám různé soubory.ino
toto je nejnovější verze kódu (?), je tu spousta úsilí, takže ocením jakýkoli návrh!
- pro narovnání jasu LED pro nízké hodnoty, - pro funkci "mapa" pro proměnné s pohyblivou řádovou čárkou - pro použití druhého jádra na ESP32, - pro pochopení toho, jak tisknout html poštu z řetězce se sprintf Mám strávil spoustu opravdového „hloupého času“, čtěte tedy komentáře v souborech.ino nebo na github!
jako nastavení nahrávání jsem použil Tools: Partition Scheme: NO OTA, abych měl více místa pro tento obrovský kód
bavte se
klikněte zde pro kód na github
Krok 2: Mapa
tento tutoriál je začleněn do kódu ESP32, takže vám mohu poskytnout pouze některá klíčová slova, odkazy a použité nástroje:
vynikající služba pro extrahování vektorových oblastí z openstreetmap
- „ostický“QGis je strávil
- pro zjednodušení mapy vyhledejte tabulku atributů
- vytvořte rozvržení tisku a exportujte mapu ve formátu svg na papírový formát A3
- bavte se s „hladším“ilustrátorem
- vytiskni si to
Krok 3: Hot Glue Party
takže mohu navrhnout vyřezat otvory pro led a displej na papíře, než jej upevním na korkovou desku
zapojení je opravdu jednoduché a špatně provedené: P
Moje úroveň pájení: Holub
jak vidíte z kódu, LED diody jdou na IO piny
#define LED_PIN0 14 // si #define LED_PIN1 27 // buon #define LED_PIN2 16 // sass #define LED_PIN3 17 // tur #define LED_PIN4 25 // ist #define LED_PIN5 26 // berr
pro pochopení vyhledejte pinout ESP32
Krok 4: Hotový výrobek
tak tahle fotka není nejlepší, ale až budeme mít nějakou říční povodeň, dám pěkné video!
Doporučuje:
Ovládání Ableton Live pomocí Atto nebo Arduino Leonardo: 3 kroky
Ovládání Abletonu naživo pomocí Atto nebo Arduina Leonardo: Toto je demo video pro Piksey Atto. Naučíme se jej používat jako MIDI zařízení a ovládat stopy v Ableton Live 10 Lite. Používáme prkénko spolu s dočasnými přepínači a pro tento projekt můžete také použít Arduino Leonardo. Pokud stavíte
Loactor With zda Live Report pomocí Chat Bot: 4 kroky
Loactor With Once Live Report using Chat Bot: Through WhatsApp, get variables (location, výška, pressure …) from NodeMCU as requested or send commands to NodeMCU via Twilio's API. For a few weeks, I have working with Twilio's API, zejména pro zasílání zpráv WhatsApp, a dokonce vytvořil ap
Začínáme s ESP32 - Instalace desek ESP32 do Arduino IDE - Kód mrknutí ESP32: 3 kroky
Začínáme s ESP32 | Instalace desek ESP32 do Arduino IDE | ESP32 Blink Code: V tomto instruktážním programu uvidíme, jak začít pracovat s esp32 a jak instalovat desky esp32 do Arduino IDE a naprogramujeme esp 32 tak, aby spustil blink kód pomocí arduino ide
Převeďte náhlavní soupravu XBox Live Communicator na náhlavní soupravu USB pro PC: 3 kroky
Převeďte náhlavní soupravu XBox Live Communicator na počítačovou náhlavní soupravu USB: Náhlavní souprava USB pro PC. Máte kolem sebe starý puk a náhlavní soupravu XBox 1 Live? Má váš místní další prodej nebo kamarád nějaký, kterého byste mohli získat? Upravte tento starý komunikátor jako náhlavní soupravu USB pro Windows! Potřebné zásoby: Komunikace Xbox Live
Live Messenger Sound MOD: 4 kroky
Live Messenger Sound MOD: Toto je návod, jak naštvat přátele, členy rodiny nebo dokonce někoho, koho nenávidíte, tak zatraceně moc. (tento režim vyžaduje, abyste měli fyzický přístup k počítači) Jsme si vědomi toho, že existují i jiné způsoby, jak změnit zvuky posla, ale