blogy logo
login PRIHLÁS SA
BLOG deadawp
ČLÁNKY
DISKUSIE
2
SLEDOVAŤ BLOG
PHP, Arduino programátor
deadawp



Hladinomer - Revízia 1 - Prehľad
pridal deadawp 8.8. 2020 o 1:33



Projekt Hladinomer existuje takmer rok a pol a za dobu svojej existencie sa projektu dostavila aj partičná  konštruktívna spätná väzba, ktorá sa zaslúžila o pridanie nových funkcionalít a rozšírenie projektu.

Patch projektu s názvom Revízia 1 priniesol tieto funkcionality:

Obmedzenie na strane webaplikácie pre prijatie dát iba POST metódou
Webaplikácia pôvodne prijímala dáta GET metódou, neskôr bola rozšírená o POST metódu. Nakoľko je POST metóda bezpečnejšia a zapuzdruje dáta v tele requestu na webserver, rozhodol som sa iba pre akceptáciu tejto metódy prenosu. V prípade, že logger (mikrokontróler) pošle dáta metódou GET, dáta nebudú spracované ani uložené do MySQL databázy.

Prepočet výšky hladiny vody na objem - litre
Na základe známeho priemeru studne, známej kalibračnej konštanty (max. hĺbka studne) a nameranej hĺbky studne je možné vypočítať objem vody vo vzťahu pre valec: Objem = π*polomer2*výška a vyjadriť tak hĺbku studne v litroch.

Výpis historicky nameraných objemov studne
Historicky výpis nameranej výšky hladiny vody bol rozšírený o výpis objemov, pričom medzi objemami bola doplnená aj tendencia. Používateľ vo webovej aplikácii ukázaním myši na tendenciu dokáže zistiť aj to, aký je rozdiel medzi predošlým a terajším objemom vody.

Rozšírenie senzorov o vodotesný ultrazvukový senzor JSN-SR04T
Senzor JSN-SR04T je ultrazvukový senzor vo vodotesnom vyhotovení, ktorý je vhodnejší pre umiestnenie do studne, kde je trvalá vlhkosť a vysoká miera korózie, ktorá by existujúci senzor HC-SR04 postupne vyradila.

Spomínaný senzor má rovnako ako HC-SR04 vývody Trigger a Echo a tak je zdrojový kód pre tento senzor plne kompatibilný s pôvodným. Senzor má však 4 až 5x väčšiu detekčnú charakteristiku, čo vo výsledku znamená, že senzor zaznamenáva veľkú oblasť, teda výsledky môžu byť skreslené najmä pri studni s menším priemerom.

Úprava Google API pre Gauge (budíkové) grafy - zmena CDN
Zdroj .js  pre Google Charts - Gauge grafy bolo zmenené a budíkové reprezentácie prestali fungovať. Zmenou zdroja scriptu na iný CDN server a načítanie balíka gauge došlo k náprave a budíkové reprezentácie sú plne funkčné.

Úprava pôvodných zdrojových kódov iba pre POST metódu HTTP / HTTPS prenosu
Zdrojové kódy využívajúce GET metódu prenosu boli odobrané,  nahradené plne iba POST metódou prenosu pre HTTP a HTTPS spojenia.

Rozšírenie zdrojových kódov o Deep Sleep mód pre platformy ESP8266, ESP32 pre Ultra-low-power aplikácie s napájaním cez batériu
Cieľom rozšírenia zdrojových kódov bolo implementovať Deep Sleep režim pre platformy ESP8266, ESP32. To umožňuje uspávanie týchto platforiem, čo vo výsledku dramaticky zníži spotrebu týchto zariadení. V prevádzke je spotreba na úrovni 80mA pri 3V3 napájaní, pri odosielaní dát po WiFi je špičkový prúd na úrovni do 240mA. S využitím Deep Sleep režimu - hlboký spánok je možné dosiahnuť spotrebu na úrovni 10μA (mikroampér). Uspávanie prebiera po odoslaní dát na webserver na 300 sekúnd (5 minút).

Zmeny v schéme zapojenia
Schéma zapojenia prispôsobená pre ULP režim, pri platforme ESP8266 sa vyžaduje prepojenie RST vývodu s vývodom GPIO16 - D0, čo je vývod s WAKE signálom, ktorý dokáže prebudiť túto platformu z režimu hlbokého spánku - Deep Sleep. ESP32 realizuje prebudenie prostredníctvom interného RTC timeru, nevyžaduje sa žiadna fyzická prepojka.

Schéma bola ďalej rozšírená o napäťové deliče pre platformy ESP8266 a ESP32 s 3V3 logikou - nakoľko sa ultrazvukový senzor napája na 5V, jeho výstup Echo je tiež 5V a vývody ESP dosiek nie sú 5V tolerantné. K tabuľkovým schémam zapojenia bolo pridané doplnkové info pre zapojenie Arduina s Ethernet modulov Wiznet rady W5200 - W5500, kde sa vyžaduje pripojenie INIT vývodu s D2 Arduina.

Prepočet maximálnej hĺbky studne vo vzťahu k detekčným charakteristikám senzorov
Do záložky Nastavenia pribudol automatický prepočet maximálnej hĺbky studne pri meraní bez odrazov. Výpočty zohľadňujú detekčné chrakteristiky senzorov HC-SR04 - 15°, JSN-SR04T - 60°. Výpočet realizovaný trigonometriou. Vzorová ukážka pre priemer studne 80 cm. - Merateľný rozsah senzorom HC-SR04 - cca 3 metre, JSN-SR04T 0,46 metra.

Nastavenia boli doplnené aj o vizualizáciu detekčných charakteristík u oboch senzorov v závislosti od vzdialenosti detegovanej hladiny. 
HC-SR04 - Detekčná charakteristika - 15°:

JSN-SR04T - Detekčná charakteristika - 60°:
Projekt Hladinomer je možné vyskúšať na: https://arduino.php5.sk/studna/



Prístupov 1198
Kvalita článku
hlasov 0

PRÍSPEVKY
SLEDOVAŤ
Prosím prihláste sa pre možnosť pridania komentáru.
Prihláste sa, alebo použite facebook login facebook login
ĎALŠIE ČLÁNKY V BLOGU
Ovládanie Arduina cez UART z počítača
[ 19.11.2020] (príspevkov 0)
ArduinoJson - knižnica pre parsovanie JS...
[ 15.11.2020] (príspevkov 0)
Overenie kradnutých vozidiel - Arduino +...
[ 11.11.2020] (príspevkov 0)
Hladinomer + Zrážkomer - Arduino / ESP82...
[ 2.11.2020] (príspevkov 0)
RFID vrátnik - update Október 2020
[ 29.10.2020] (príspevkov 0)
Digitálny potenciometer, prerušenie, deb...
[ 28.10.2020] (príspevkov 0)
Integrácia zrážkomera RG-11 do projektu ...
[ 22.10.2020] (príspevkov 0)
WiFi Termostat - ESP8266 - WiFiManager -...
[ 28.9.2020] (príspevkov 0)
Izbový termostat - Portovanie programu -...
[ 22.9.2020] (príspevkov 0)
RFID vrátnik - Ukončenie projektu
[ 9.9.2020] (príspevkov 0)