![ESP32 Scraper-parser-mailer a Live Mapper: 4 kroky (s obrázkami) ESP32 Scraper-parser-mailer a Live Mapper: 4 kroky (s obrázkami)](https://i.howwhatproduce.com/images/002/image-5447-j.webp)
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-23 15:05
![ESP32 Scraper-parser-mailer a Live Mapper ESP32 Scraper-parser-mailer a Live Mapper](https://i.howwhatproduce.com/images/002/image-5447-1-j.webp)
![ESP32 Scraper-parser-mailer a Live Mapper ESP32 Scraper-parser-mailer a Live Mapper](https://i.howwhatproduce.com/images/002/image-5447-2-j.webp)
![ESP32 Scraper-parser-mailer a Live Mapper ESP32 Scraper-parser-mailer a Live Mapper](https://i.howwhatproduce.com/images/002/image-5447-3-j.webp)
Hello World! Toto je môj prvý pokyn! Som Marco z Grosseto v Taliansku, nie som vývojár, nie som elektronický inžinier, ale som sprievodca v oblasti životného prostredia v našom miestnom prírodnom parku (prírodný park Maremma).
V mojom družstve veľa pracujeme s výletmi na kanoe, naturalistickými a pokojnými výletmi po rieke Ombrone na pozorovanie vtákov a trochu zmyslu pre relaxáciu.
Rieka Ombrone je však známa aj svojim charakteristickým druhom toku: od letného „nulového“po jesenno-zimný tok niekoľko tisíc metrov kubických vody za hodinu.
Z tohto dôvodu je rieka Ombrone neustále monitorovaná vynikajúcou regionálnou hydrometrickou službou (SIR) s fantastickým webom, ktorý sprístupňuje zozbierané údaje.
Teraz čakáme na koniec sezóny a prvé jesenné povodne na odstránenie doku a kanoe…
Ale keď začneme hovoriť o zoškrabaní pri analýze esp32ing atď.? ešte chvíľu
Počas talianskeho zablokovania som urobil prvú lekciu arduino blink, cool … a pokračoval som v hraní so senzormi a arduino C. Ak sa vám môj kód zdá hrubý alebo plný nezmyselných logických medzier, zvážte to!
Robil som veľa vecí, len aby som stratil čas, ale s týmto neustálym rizikom záplav som sa rozhodol urobiť niečo cool: vďaka ESP32 s arduino form factor (Wemos d1 r32), ktorý som držal zabalené niekoľko mesiacov, pretože som si myslel, že je „náročný“„Naozaj som mal veľa uspokojení:
Urobil som škrabku, ktorá prináša a analyzuje údaje z webovej stránky SIR a zobrazuje premenné získané na lacnom i2c LCD displeji a ako bliká frekvencia jasu na niektorých diódach na realistickej mape.
takže ak príde povodeň z horskej strany, budem varovaný zvyšujúcim sa jasom (zmena úrovne) a zvyšujúcou sa frekvenciou (zmena úrovne za jednu hodinu) LED diód na mape … ale ESP32 môže odosielať aj e -maily! Tak prečo pre to neurobiť funkciu?
poďme sa teraz pozrieť na kód nižšie!
Zásoby
- Doska založená na ESP32: Použil som Wemos d1 r32, pretože má samičie kolíky a manipulácia s ním je jednoduchšia
- LED diódy, červená je viac „výstražná ako“
- I2C 16x2 LCD iv'e iba modrý, ale zelená je štýlovejšia
- lacná korková doska
- nočný čas (voliteľné)
Krok 1: Kód
![Kód Kód](https://i.howwhatproduce.com/images/002/image-5447-4-j.webp)
![Kód Kód](https://i.howwhatproduce.com/images/002/image-5447-5-j.webp)
online našiel som iba báječné návody, ktoré na analýzu údajov používajú externé weby, a tak som sa pokúsil otestovať silu jadier esp32 analyzujúcich údaje priamo na doske … bez problémov!
takže ak sa pozriete na stránku SIR, zdroj pochopí, ako to funguje: našťastie na zobrazenie svojich údajov používa hodnoty „oddelené čiarkou“, takže pomocou tohto kódu vyhľadám hydrografickú stanicu (kód TOSnumber) a spočítam počet čiarok (ako oddeľovač), ktoré obsahujú požadovanú hodnotu (a uložte ju ako premennú), potom ju premapujte ako jas LED a čas v milisekundách, kým bliká „úroveň variácie“
Jadro tejto škrabky je na karte
ind = payload.indexOf ("TOSstation_number"); // získajte pozíciu (ind), odkiaľ začnite počítať čiarky
Reťazec my_var = getValue_ind (užitočné zaťaženie, ',', 8); // kde 8 je ôsma bunka definovaná čiarkami (oddeľovač)
„užitočné zaťaženie“je to, čo získam z webu, ktorý bol predtým vyčistený z „citácií“a „& nbsp“;
a funkciu getValue_ind, ktorá je na hlavnej karte
Reťazec getValue_ind (Reťazcové údaje, oddeľovač znakov, int index) {
int nájdené = 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ájdený návrat> index? data.substring (strIndex [0], strIndex [1]): ""; }
upravené z
kód sa pýta na stránku každých 15 minút, je to asi 44 kB, nemyslím si, že by to bolo pre servery a ESP32 veľké zaťaženie. Aby som sa vyhýbal prílišnému posúvaniu, rozdelil som program na rôzne funkcie, prečítajte si komentáre
tu je vkladanie kódu skutočne neporiadok … vkladám súbory.ino priamo
Použil som funkciu kariet v arduino IDE, takže mám rôzne súbory.ino
toto je najnovšia verzia kódu (?), je tu veľa úsilia, takže ocením každý návrh!
- na vyrovnanie jasu LED pre nízke hodnoty, - na funkciu „mapa“pre premenné s pohyblivou rádovou čiarkou - na použitie druhého jadra na ESP32, - na pochopenie toho, ako vytlačiť html poštu z reťazca so sprintf strávil veľa skutočného „nerdingového času“, takže si prečítajte komentáre k súborom.ino alebo na github!
ako nastavenia nahrávania som použil Nástroje: Schéma oddielov: BEZ OTA, aby som mal viac miesta pre tento obrovský kód
bavte sa
kliknutím sem získate kód na github
Krok 2: Mapa
![Mapa Mapa](https://i.howwhatproduce.com/images/002/image-5447-6-j.webp)
![Mapa Mapa](https://i.howwhatproduce.com/images/002/image-5447-7-j.webp)
![Mapa Mapa](https://i.howwhatproduce.com/images/002/image-5447-8-j.webp)
tento tutoriál je zahrnutý v kóde ESP32, takže vám môžem poskytnúť iba niektoré kľúčové slová, odkazy a použité nástroje:
vynikajúca služba pre extrahovanie vektorových oblastí z openstreetmap
- „ostický“QGis na ich strávenie
- pre zjednodušenie mapy vyhľadajte tabuľku atribútov
- vytvorte rozloženie tlače a exportujte mapu vo formáte svg na papierový formát A3
- bavte sa s „hladším“ilustrátorom
- vytlač to
Krok 3: Večierok s horúcim lepidlom
![Párty s horúcim lepidlom Párty s horúcim lepidlom](https://i.howwhatproduce.com/images/002/image-5447-9-j.webp)
![Párty s horúcim lepidlom Párty s horúcim lepidlom](https://i.howwhatproduce.com/images/002/image-5447-10-j.webp)
![Párty s horúcim lepidlom Párty s horúcim lepidlom](https://i.howwhatproduce.com/images/002/image-5447-11-j.webp)
![Párty s horúcim lepidlom Párty s horúcim lepidlom](https://i.howwhatproduce.com/images/002/image-5447-12-j.webp)
takže môžem navrhnúť vyrezať otvory pre diódu LED a displej na papieri a potom ich pripevniť na korkovú dosku
zapojenie je skutočne jednoduché a mnou zle urobené: P
Moja úroveň spájkovania: holub
ako vidíte z kódu, LED diódy idú na piny IO
#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
vyhľadajte porozumenie pinoutu ESP32
Krok 4: Hotový výrobok
![Hotový výrobok Hotový výrobok](https://i.howwhatproduce.com/images/002/image-5447-13-j.webp)
tak táto fotka nie je najlepšia, ale keď sa dostaneme k riečnej povodni, dám pekné video!
Odporúča:
Začíname s ESP32 - Inštalácia dosiek ESP32 do Arduino IDE - Kód blinkru ESP32: 3 kroky
![Začíname s ESP32 - Inštalácia dosiek ESP32 do Arduino IDE - Kód blinkru ESP32: 3 kroky Začíname s ESP32 - Inštalácia dosiek ESP32 do Arduino IDE - Kód blinkru ESP32: 3 kroky](https://i.howwhatproduce.com/images/002/image-4451-12-j.webp)
Začíname s ESP32 | Inštalácia dosiek ESP32 do Arduino IDE | Kód blinkru ESP32: V tomto návode uvidíme, ako začať pracovať s esp32 a ako nainštalovať dosky esp32 do Arduino IDE a naprogramujeme esp 32 tak, aby spustil kód blinkingu pomocou arduino ide
Premeňte svoju náhlavnú súpravu XBox Live Communicator na náhlavnú súpravu USB pre počítač: 3 kroky
![Premeňte svoju náhlavnú súpravu XBox Live Communicator na náhlavnú súpravu USB pre počítač: 3 kroky Premeňte svoju náhlavnú súpravu XBox Live Communicator na náhlavnú súpravu USB pre počítač: 3 kroky](https://i.howwhatproduce.com/images/002/image-5908-53-j.webp)
Premeňte svoju náhlavnú súpravu XBox Live Communicator na PC náhlavnú súpravu USB: Náhlavná súprava USB pre PC. Ležíte okolo starého puku a náhlavnej súpravy XBox 1 Live? Má váš miestny ďalší predaj alebo priateľ taký, ktorý by ste mohli získať? Zmeňte účel tohto starého komunikátora na náhlavnú súpravu USB pre systém Windows! Potrebné príslušenstvo: Komunikácia Xbox Live
Live Messenger Sound MOD: 4 kroky
![Live Messenger Sound MOD: 4 kroky Live Messenger Sound MOD: 4 kroky](https://i.howwhatproduce.com/images/004/image-11748-16-j.webp)
Live Messenger Sound MOD: Toto je návod, ako nahnevane naštvať priateľov, rodinných príslušníkov alebo dokonca niekoho, koho nenávidíte. (tento režim vyžaduje, aby ste mali fyzický prístup k počítaču) Uvedomujeme si, že existujú aj iné spôsoby, ako zmeniť zvuky posla, ale
Burn Live Linux Distro je jednoduchá cesta!: 3 kroky
![Burn Live Linux Distro je jednoduchá cesta!: 3 kroky Burn Live Linux Distro je jednoduchá cesta!: 3 kroky](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10959962-burn-live-linux-distros-the-easy-way-3-steps-j.webp)
Burn Live Linux Distro je jednoduchý spôsob !: Poznámka: Toto je môj prvý pokyn. Ak sa vyskytnú nejaké chyby, vopred sa ospravedlňujem. Unetbootin (Universal Netboot Installer) je softvér na vytváranie živých diskov USB Linux. Dodáva sa s radom vopred vybraných distribúcií
Opravte chybový kód Windows Live Messenger: 4 kroky
![Opravte chybový kód Windows Live Messenger: 4 kroky Opravte chybový kód Windows Live Messenger: 4 kroky](https://i.howwhatproduce.com/preview/how-and-what-to-produce/11122390-fix-windows-live-messenger-error-code-4-steps-j.webp)
Opravte chybový kód Windows Live Messenger: Chybové kódy sú bežným problémom programov MSN Messenger a Windows Live Messenger; tu je niekoľko spôsobov, ako to vyriešiť