[ARDUINO] Oko Cyklopa – ultradźwiękowy „radar” do lokalizacji obiektów

List. 4. Fragment programu sortujący wyniki pomiaru

Podczas analizy schematu napotkałem kluczowy problem. Pierwotnie urządzenie miało być zasilane z wykorzystaniem stabilizatora napięcia zamontowanego na płytce startowej Arduino Leonardo. Jednak wykorzystany w projekcie silnik serwo potrzebował większej mocy niż mógł dostarczyć stabilizatora. Powodowało to znaczne spadki napięcia w układzie, co skutkowało zerowaniem się mikrokontrolera. Aby zabezpieczyć układ przed spadkami napięcia, wykorzystałem układ zasilający step-down, który stał się równoległym źródłem napięcia dla silnika serwo oraz Arduino. Na rysunku 4 znajduje się ostateczny schemat urządzenia.

 

Rys. 4. Schemat elektryczny finalnego urządzenia

 

Pamiętając o estetycznym programowaniu zostały przygotowane bloki funkcyjne realizujące główne zadania. Pierwszy realizuje pobranie oraz analizę danych z czujników ultradźwiękowych (listing 5 i listing 6), natomiast drugi blok główny kieruje pracą serwomechanizmu (listing 7).

 

List. 5. Fragment programu odpowiedzialny za pomiar odległości

List. 6. Fragment programu sortujący wartości odczytane przez czujniki

List. 7. Pętla główna programu

Opisywany projekt jest przeznaczony przede wszystkim dla początkujących oraz średnio-zaawansowanych adeptów robotyki. Pozwala zdobyć doświadczenie w dziedzinie wykorzystania czujników ultradźwiękowych w różnych konfiguracjach portów. Realizując ten projekt (fotografia 5) zyskujemy umiejętności wykorzystania silników serwo, które dzięki swej precyzji często są obowiązkowym punktem kolejnych projektów.

 

Fot. 5. Widok zmontowanego urządzenia

 

O autorze