P: Hladinomer - Monitor výšky hladiny - Arduino + ultrazvuk

Sekcia určená na predaj

Moderátori: Merak, Moderátori

martinius96
Okoloidúci
Okoloidúci
Príspevky: 7
Dátum registrácie: 22 Feb 2020, 01:51
Bydlisko: Poprad

P: Hladinomer - Monitor výšky hladiny - Arduino + ultrazvuk

Príspevok od používateľa martinius96 » 18 Aug 2020, 12:47

Ponúkam mnou navrhnutý a naprogramovaný SOFTVÉR - webaplikáciu pre projekt Hladinomer. Ten umožňuje merať výšku hladiny vody (alebo podobnej kvapaliny) v studni. Princíp merania ultrazvukových senzorov je vyslanie signálu Trigger o určitej dĺžke, ktorý sa od hladiny odrazí a vráti sa do prijímača - Echo. Na základe prepočtu času vzhľadom na rýchlosť šírenia zvuku je možné určiť vzdialenosť medzi senzorom a hladinou vody (ktorá je dodatočnou konštantou prepočítaná na výšku hladiny vody od dna a takto vyjadrený aj objem).

Projekt využíva ultrazvukový senzor vzdialenosti HC-SR04 (detekčný uhol 15°), prípadne vodotestný senzor JSN-SR04T (detekčný uhol je až 60°).
Ako riadiaci mikrokontróler je možné využiť Arduino s Ethernet modulom Wiznet W5100 alebo W5500, prípadne WiFi platformy ESP8266 (NodeMCU, Wemos D1 Mini), alebo ESP32 (Devkit). Softvér obsahuje schému zapojenia pre všetky tieto platformy. Spomenuté platformy ESP8266 a ESP32 je možné prevádzkovať aj v režime Deep Sleep, ktorý dramaticky zníži ich spotrebu. Taktiež v režime StandBy existuje aj implementácia pre Over The Air (OTA) aktualizáciu firmvéru prostredníctvom LAN siete. Arduino s Ethernetom podporuje iba HTTP konektivitu!

Pre prevádzku projektu je nutné vlastniť webserver na verejnej IP adrese, alebo v LAN sieti, kam daná platforma odosiela dáta z ultrazvukového senzora. Na webserveri beží aplikácia, ktorá používateľovi ukáže v monitore posledné údaje, ale taktiež aj výšku hladiny vody za mesiac, týždeň, deň v prehľadných grafoch, či tabuľkovom vyhotovení. Web rozhranie obsahuje aj záznam rekordov - maximálna, minimálna hodnota hladiny vody za 24 hodín, 7 dní, 30 dní.

Webaplikácia má aj rôzne meniteľné údaje - výška celej studne (slúži ako kalibračná hodnota pre merania), nakoľko vyššia hladina = menšia hodnota medzi hladinou a senzorom, ktorý je umiestnený na vrchu studne. Preto sa touto hodnotou očítava meranie, aby sa zistila skutočná výška hladiny vody. Druhým meniteľným parametrom je priemer studne, ktorým je možné vykonať prepočet objemu studne v litroch s aktuálnou výškou hladiny a taktiež obsahuje aj odhad maximálnej hĺbky studne pri danom priemere pre čo najpresnejšie merania bez odrazov. Tento odhad maximálnej hĺbky studne sa realizuje trigonometriou.

Zdrojové kódy pre všetky tieto platformy, schéma zapojenia, knižnice pre senzor HC-SR04 sú obsiahnuté priamo vo webaplikácii. Dáta sú do webového rozhrania odosielané po HTTP / HTTPS protokole s POST payloadom. Vhodné aj pre laikov, stačí iba nahodiť webové rozhranie a upraviť cestu pre odosielanie dát. Programy pre Arduino obsahujú integrovaný watchdog, ktorý Arduino reštartuje pri záseku programu.

PONÚKAM IBA SOFTVÉR, HARDVÉR JE NUTNÉ ZAOBSTARAŤ SI SAMOSTATNE!

Projekt je možné vopred vyskúšať zdarma na mojej doméne s vašim hardvérom: https://arduino.php5.sk/studna/
Pri záujme o kúpu / vyskúšanie: martinius96@gmail.com
Cena: 30€ za komplet

Fotogaléria webaplikácie a hardvéru:
Obrázok
Obrázok
Obrázok
Obrázok
Obrázok
Obrázok
Obrázok

Detekčná charakteristika HC-SR04 (1,2 metra pri 4,5m hĺbke):
Obrázok
Detekčná charakteristika JSN-SR04T (6 metrov pri 4,5m hĺbke):
Obrázok
0

Používateľov profilový obrázok
marioo
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1112
Dátum registrácie: 15 Júl 2012, 12:28
Bydlisko: SVK
Vek: 47

Re: P: Hladinomer - Monitor výšky hladiny - Arduino + ultrazvuk

Príspevok od používateľa marioo » 19 Aug 2020, 09:10

Pekná práca, fungovalo by to v kovovej oválnej nádrži? (stará mliekarenská cistrena cca 5000l) ?
0

martinius96
Okoloidúci
Okoloidúci
Príspevky: 7
Dátum registrácie: 22 Feb 2020, 01:51
Bydlisko: Poprad

Re: P: Hladinomer - Monitor výšky hladiny - Arduino + ultrazvuk

Príspevok od používateľa martinius96 » 19 Aug 2020, 11:40

Malo by to fungovať, avšak najlepšie by to bolo najprv otestovať.
Testovalo sa to v rôznych studniach, ale aj nádržiach. Pri porovnaní som nezistil rozdiely medzi tými meraniami (aby tam bol viditeľný nejaký faktor skreslenia uzavretej nádrže). Pri každom meraní sa vykonáva 10 meraní, ktoré sa následne priemerujú pre dosiahnutie optimálnej hodnoty.

Skôr môže byť problém, že tá nádrž môže mať hrdlo, kam sa umiestní senzor a tam to môže skreslovať, nakoľko hrdlo nebude mať dostatočný priemer a ultrazvuk sa od neho môže odraziť aj viac krát. Zvlášť pri senzore JSN-SR04T (vodotesnom), ktorý má až 60 resp do 75° detekčný uhol, tam je ten rozptyl fakt veľký.
0

martinius96
Okoloidúci
Okoloidúci
Príspevky: 7
Dátum registrácie: 22 Feb 2020, 01:51
Bydlisko: Poprad

Re: P: Hladinomer - Monitor výšky hladiny - Arduino + ultrazvuk

Príspevok od používateľa martinius96 » 03 Feb 2021, 17:40

Aktuálne.

Do projektu bola pridaná podpora pre využitie prenosu dát cez IoT sieť Sigfox s kompatibilným WISOL UART modemom Hodí sa predovšetkým do oblastí bez pevného internetu. Sigfox má pokrytie skoro na 90% Slovenska. Vhodné predovšetkým pre projekt prevádzkovaný na batériu, spotreba pri vysielaní je tretinová v porovnaní s ESP32. Samotný modul podporuje režimy spánku soft/deep. Komunikuje cez AT príkazy.

Modul odošle cez bázové stanice payload (HEX) do Sigfox backendu, kde je potrebné vytvoriť callback, ktorý dáta spracuje, odošle vo formáte, aký očakáva webserver pre zápis - podporuje HTTP i HTTPS request. Nakoľko má testovací freehosting iba podporu HTTP, je nutné pre testovanie použiť iba HTTP. Vytvorené programové implementácie je možné ihneď otestovať s kompatibilným hardvérom. Nakoľko je Sigfox limitovaný aj počtom správ / deň, odosiela dáta každých 11 minút. Maximálne je možné posiela 12B. Projekt Hladinomer má iba 4B payload, Hladinomer rozšírený o zrážkomer 8B payload. Payload je možné doplniť o systémové info - geolokačné dáta, číslo správy, RSSI a iné... Nastavenie callbacku je popísané v programovej implementácii pre Sigfox dostupnej na Githube.

Programové implementácie pre mikrokontroléry (rozdelené podľa projektu):
https://github.com/martinius96/hladinom ... r/examples
URL projektu Hladinomer pre vyskúšanie:
http://arduino.clanweb.eu/studna_s_prekladom/
URL projektu Hladinomer rozšírený o zrážkomer RG-11 (pracuje v režime preklápacieho vedra s 0.01mm rozlíšením):
http://arduino.clanweb.eu/studna/
0

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok