2. Řduino-LED Ukazatel Vzdálenosti
by prokyber in Circuits > Arduino
141 Views, 0 Favorites, 0 Comments
2. Řduino-LED Ukazatel Vzdálenosti

Cílem tohoto projektu je sestrojit obvod, který bude fungovat jakožto ukazatel vzdálenosti ultrazvukového senzoru od překážky před ním. Podobný princip se s trochou představivosti dá také předělat na takového primitivního parkovacího asistenta.
Supplies
- Řduino-LED
- nepájivé pole
- kabely
- servomotor
- ultrazvukový senzor HC-SR04
Servomotor

Servomotor (zkráceně servo) je typ motoru, u kterého je možné nastavit přesný úhel natočení. Serva mohou být volná nebo vázaná rozsahem otáčení. V našich sadách se setkáte se servem, které je omezeno na rozsah 180°. Nejčastěji se taková serva používají třeba pro pohyb páky nebo směrovky. Ve vnitřní konstrukci se nachází mikrokontrolér, který od nás obdrží data pomocí modulace PWM a ta porovná s informacemi o pozici serva dodanými určenou součástkou (například potenciometrem). Následně po porovnání požadované a reálné pozice dodá motoru dostatek energie, aby se otočil tak, že se budou obě tyto čísla shodovat.
Ultrazvoukový Senzor

Pojďme si vysvětlit, jak funguje náš ultrazvukový senzor. K určování vzdálenosti využívá vysokofrekvenční vlnění pro lidské ucho nezachytitelné. Tento zvuk se následně odráží od předmětů, jež mu stojí v cestě, a je tak poslán zpět k senzoru, který je schopen jej rozpoznat a zaznamenat. Celkový výpočet vzdálenosti se pak provádí na základě znalosti rychlosti vypuštěného signálu a času mezi jeho vypuštěním a opětovným zaznamenáním.
Princip Funkce
Vysvětleme si princip fungování našeho obvodu. Skládá se ze tří částí: ultrazvukového senzoru, servomotoru a LEDek.
Po zapnutí módu se spustí 10 milisekundový puls na pinu ultrazvukového senzoru, který je zodpovědný za vysílání signálu.
Pokud je vypočítaná vzdálenost větší než 50 cm, určíme ji jako 50 cm a tím si pro jednoduchost omezíme schopnost obvodu vnímat překážky na tuto vzdálenost.
Následně vypočítáme, kolik procent z maximální vzdálenosti (50 cm) činí aktuální vzdálenost překážky od senzoru. Podle tohoto čísla pak můžeme určit, o kolik procent z maximální pozice (180°) máme servomotor otočit a kolik z určených LEDek máme rozsvítit.
Zapojení

Ultrazvukový senzor
Pin A1 je v programu zodpovědný za tvorbu výše zmíněného pulsu. Propojíme jej tedy, stejně jako ostatní piny komunikující s ultrazvukovým senzorem, přes nepájivé pole, s pinem Trig.
Pin A2 program využívá pro čtení ze senzoru a získáváme z něj pomocí napětí informace o vzdálenosti. Propjíme jej s pinem Echo ultrazvoukového senzoru.
Teď pro svou funkci ultrazvukový senzor potřebuje již jen proud a uzemění. Náš senzor operuje s logickým napětím 3,3V. Propjíme tedy pin 3V3 s pinem Vcc a kterýkoliv z pinů GND na desce s pinem Gnd.
Servomotor
Pin A3 v našem programu používáme pro ovládání servomotoru pomocí modulace PWM. Propojíme jej tedy se vstupem oranžového vodiče servomotoru.
Teď pro svou funkci servomotor potřebuje již jen proud a uzemění. Náš senzor operuje s napětím 5V. Propojíme tedy pin 5V se vstupem červeného vodiče servomotoru a kterýkoliv z pinů GND na desce se vstupem hnědého vodiče servomotoru.
Nastavení Desky

Před tím než desku zapojíte do počítače, nastavte zabudovaný DIP switch na hodnotu ukázanou na obrázku. (světlé části jsou vystouplé výběžky přepínače) Poku jste již desku zpojili, je možné ji resetovat kovovým tlačítkem v levém horním rohu. Po zapojení by se měl program spustit.