Jste zde

Ultrazvukový dálkoměr s ATMega8515

Toto zařízení slouží k bezdotykovému měření vzdálenosti. Měří se pomocí ultrazvukového signálu, který je vyslaný z vysílače. Signál prochází prostředím až k překážce, jejíž vzdálenost chceme měřit. Část tohoto signálu se odrazí a putuje prostředím zpět a je přijato přijímačem. Z doby prodlevy mezi vysláním a příjmem signálu se určí poté vzdálenost překážky.

Zařízení bylo navrženo jako parkovací asistent pro automobil. Při couvání měří velikost volného místa za vozidlem. Je možné si k tomuto zařízení stáhnout dva druhy softwaru do MCU. První verze je určena pro parkovací asistent. Po aktivaci měření zařízení měří vzdálenost stále až do vypnutí a ukazuje ji na LCD. Druhá verze je určena pro ruční měření vzdálenosti. Po aktivaci zařízení změří vzdálenost a ukáže ji na LCD. Pro další měření je potřeba provést novou aktivaci měření.

Schéma zapojení ultrazvukového dálkoměru
Schéma zapojení ultrazvukového dálkoměru

Použité ultrazvukové senzory jsou typu UST40T (vysílač) a UST40R (přijímač). Mikroprocesor který řídí měření vzdálenosti je Atmel AVR Mega8515. Měřená vzdálenost se zobrazuje na displeji 2x16 znaků. Zařízení má dvě tlačítka. Tlačítkem S2 se aktivuje nebo deaktivuje měření a tlačítkem S1 se ovládá podsvícení displeje. Zařízení dále obsahuje konektor SV1 pro připojení programátoru mikroprocesoru programovatelného přes ISP.

Při aktivaci měření začne mikroprocesor generovat pomocí 8bit časovače na portu B0 kmitočet 40kHz, který je přes systém invertorů proudově zesílen a slouží k buzení ultrazvukového vysílače, který tímto začne vysílat. Současně se s aktivací vysílání spustí 16bit časovač, který měří čas do příjmu odraženého signálu. Vyslaný signál se šíří prostředím. Po nárazu na překážku se ho část odrazí a vrací se zpět k senzoru. Odražený signál je zachycen přijímačem, zesílen v neinvertujícím zesilovači a následně usměrněn. Usměrněný signál je přiveden na interní analogový komparátor v mikroprocesoru, u kterého důsledkem příjmu dochází k překlopení. V tomto okamžiku se ukončí vysílání, ale hlavně se ukončí počítaní doby příjmu odraženého signálu. 16bit časovač je nastavený tak, aby počítal impulsy po 1μs. Měření je ošetřeno způsobem, pokud nedojde k příjmu signálu, nastane přetečení 16bitového čítače (po 65ms) a vysílání a měření času se ukončí. Na displeji se zobrazí nápis „mimo dosah“. Další měření se opět aktivuje stiskem tlačítka S2. Při příjmu odraženého signálu a následném ukončením počítání času se počet napočítaných 1μs vzorků uloží do proměnné a registr časovače se vynuluje. Proměnná, která obsahuje počet časových vzorků, se musí vynásobit s délkovou konstantou, aby bylo možné zobrazit změřenou vzdálenost.

Po vynásobení proměnné s napočítaným počtem časových vzorků délkovou konstantou dostáváme aktuální vzdálenost k překážce v centimetrech. Výsledek je zaokrouhlen na jedno desetinné místo.
V zapojení je dále použitá LED dioda. Ta začne varovně blikat při vzdálenosti překážky menší než 50cm.

Plošný spoj ultrazvukového dálkoměru
Osazení plošného spoje ultrazvukového dálkoměru

Před prvním (po vyrobení zařízení) měřením je potřeba provést nastavení referenčního napětí pro komparátor. K tomu slouží odporový trimr R5. Provedeme propojení konektoru JP2. Tím na měřiči nastavíme seřizovací mód. Vysílač bude stále vysílat. Referenční napětí nastavíme na velikost, aby se překlápěl komparátor na maximální měřenou vzdálenost. Překlopení signalizuje LED dioda. Při dostatečném příjmu odraženého signálu dojde k překlopení a LED se rozsvítí. Pokud jeden senzor zastíníme, tak LED musí zhasnout. Po nastavení konektor JP2 opět rozpojíme a senzor je připravený k měření. Odporový trimr R2 slouží k nastavení kontrastu znaků na LCD.

Nevýhoda tohoto jednoduchého dálkoměru spočívá v proměnné rychlosti zvuku ve vzduchu vzhledem ke změnám teploty.

Rychlost zvuku ve vzduchu za různých teplot

Teplota Rychlost
-20°C 319,3 m/s
0°C 331,6 m/s
5°C 334,5 m/s
10°C 337,5 m/s
15°C 340,6 m/s
20°C 343,8 m/s
25°C 346,3 m/s
40°C 355,3 m/s
60°C 366,5 m/s
80°C 377,5 m/s

Tento dálkoměr má délkovou konstantu vypočtenou pro teplotu 25°C. Pro přesnější měření by bylo nutné doplnit zařízení teploměrem. Před každým měřením poté nejprve změřit teplotu vzduchu a zvolit vhodnou délkovou konstantu. Rychlost se navíc ještě mění s proměnným tlakem. Tato změna ale není tak velká jako v případě změny teploty.

Zařízení je spíše pro orientační měření. Důležité je také, kde se měření provádí. Zařízení snímá jakýkoliv ultrazvukový signál o kmitočtu 40kHz. Proto může hrozit i rušení od jiných měřících přístrojů. Dále je zařízení citlivé i na nežádoucí odrazy signálu. Například na odrazy při měření v úzké chodbě. Nejpřesnější měření bude na otevřeném prostoru kde nehrozí, že se signál odrazí od jiné překážky, než od té, kterou chceme měřit.

Je zde možnost si opět stáhnout zdrojový kód do MCU a také návrh PCB.

Babčaník Jan
Babcanik@seznam.cz

Download & Odkazy

Hodnocení článku: 

Komentáře

Dobrý den, mohl bych poprosit o nenakonvertovaný program?
Příloha obsahuje HEX soubory.. Chtěl bych se podívat na celý program dopodrobna, pokud by to bylo možné ..

Děkuji

Dobrý den,

chtěl bych upozornit na možný problém při oživování desky - ve schématu je uvedené pouzdro MEGA162. Koupit ale musíte ATMegu 8515.