Dnes si predstavíme používané ultrazvukové senzory, ktoré je možné použiť s Arduinom pre radu projektov. Rozoberieme si vyhotovenie, detekčnú charakteristiku jednotlivých senzorov.
Princíp funkčnosti ultrazvukových senzorov HC-SR04 a JSN-SR04T:
Senzor vyšle Trigger signál dĺžky 10 mikrosekúnd. Od tohto momentu sa počíta čas do prijatia odrazených vĺn - Echo signálu. Na základe prepočtu (so známou rýchlosťou šírenia zvuku) je možné určiť vzdialenosť od objektu v centimetroch. Existujú verzie s dvomi samostatnými ovládacimi vývodmi, alebo s jedným - je ho možné prepínať medzi režimom Trigger a Echo. HC-SR04 je najpoužívanejší ultrazvukový senzor. Dokáže detegovať vzdialenosť 2 až 450 cm, pričom má 15° detekčnú charakteristiku. Ultrazvukový signál na frekvencii 40kHz, spotreba na úrovni 8mA pri 5V napájaní.
JSN-SR04T je vodotesný variant ultrazvukového senzora. Dokáže detegovať vzdialenosť 20 až 600 cm s 60° detekčnou charakteristikou. Ultrazvukový signál na frekvencii 40kHz, spotreba na úrovni 8mA pri 5V napájaní. Senzor je presnejší ako HC-SR04 a násobne drahší. Senzor obsahuje aj riadiacu dosku (nie vodotesnú) a 1 metrový kábel s možnosťou rozšírenia o ďalšie metrové prepojky.
Detekčná chrakteristika popisuje šírku lúča, ktorý senzor vysiela a následne prijíma. Čím je detekčná chrakteristika väčšia, tým väčšia je aj detegovaná plocha. V prípade využívania ultrazvukového senzora v užších podmienkach (studňa, rúra) môže práve chrakteristika znepresniť merania a prináša do meraní ruchy spôsobené odrazmi ultrazvukových vĺn od stien rúry, studne.
Detekcia s odrazmi od stien studne môže v čase vyzerať následovne (každé meranie využívalo priemer 10-tich meraní):
Detekčná chrakteristika HC-SR04 - 0 až 450cm - 15°:
Detekčná chrakteristika JSN-SR04T - 0 až 450cm - 60°:
Z výsledkov meraní je zremé, že pri 450cm vzdialenosti prekážky od senzora HC-SR04 deteguje oblasť s priemerom na úrovni cca 120cm. JSN-SR04T deteguje oblasť s priemerom cca 600cm. Prostredníctvom výpočtu trigonometriou je možné vypočítať ku konkrétnej vzdialenosti maximálnu merateľnú vzdialenosť bez odrazov.
Implementácia trigonometrie je obsiahnutá aj v mojom projekte pre Hladinomer, kde je možné experimentálne vypočítať teoretickú merateľnú hĺbku studne pri známom priemere studne.
V poslednej revíziu projektu Hladinomer boli do projektu obsiahnuté aj Deep Sleep módy pre mikrokontroléry ESP8266, ESP32 a taktiež aj možnosť využitia senzoru JSN-SR04T, ktorému zodpovedá rovnaká schéma zapojenia ako pre HC-SR04.
Výpočet maximálnej hĺbky studne bez odrazov so známym priemerom studne:
H_MAX = PRIEMER_STUDNE / TG(CHRAKTERISTIKA_V_RADIANOCH)
Viac o projekte hladinomer (obsahuje popis ešte pred revíziou):
http://deadawp.blog.sector.sk/blogclanok/13127/hladinomer-arduino-esp32-esp8266-ultrazvuk.htm
Vyskúšajte projekt pre hladinomer on-line s vašim hardvérom:
http://arduino.clanweb.eu/studna_s_prekladom/