Skocz do zawartości

Pomocna odpowiedź

Napisano

Buduje taki mini skaner 3D na bazie dwóch serw i czujnika ultra dźwiękowego.

Przy okazji się dowiem dlaczego niektóre roboty walą łbem w ścianę(błędny odczyt).

Plany podstawy:

Wykonana podstawa:

Planuje użyć Arduino mega2560 R3 jako drivera.

Napisze program w Visual C++ sterujący skanerem i wyświetlający efekt na ekranie za pomocą openGL. Planuje wynik z licznika dla czujnika nie obrabiać na Arduino tylko wysłać bezpośrednio na PC i tam przetworzyć za pomocą liczb double.

Aktualnie czekam na przesyłkę z Arduino(Allegro).

Czujnik ultradzwiekowy to kiepski wybór ponieważ on nie wysyła fali w jeden mały punkt tylko fala rozchodzi się na boki do tego dochodzi echo.

jedyny plus to wykrywanie szyby z którymi podczerwieni nie da sobie rady.

Znacznie lepszy był by czujnik laserowy albo linia laserowa i kamera pod kątem"opisane na forum chyba".

Czujnik laserowy jest bardzo drogi nie stać mnie.

A linia + kamera na ścianie to ma być żart to się nadaje do skanowania wypukłych elementów.

Nie to niema być żart za pomocą lini i kamery można zmierzyć odległość do ściany.

Znając kąt między linia i kamerą można obliczyć odległość.

Mogę się mylić ale na podobnej zasadzie działają sharpy, ale mogę się mylić bo nie znam za dobrze budowy sharpów.

Uruchomiłem skaner biedny robot z którego wyrwałem elektronikę(już nie pochodzi 😃 ).

Oto wynik:

IMG_540c4fc75f5256080.png

Legenda zielone to kąt 0(Y) a czerwone to kąt 180(Y).

Odczyt jest robiony co około 5-8 stopni.

Złoże to w mapę 3D później...

Urządzenie było pod krzesłem z jednej strony miało dziurę wiec niektóre wyniki wysokie były.

Filmik z działania:

Bardzo ciekawy projekt, czekałem aż ktoś opisze coś podobnego. Planuję nawet podobny temat do jednego z małych konkursów. Ciekawy jestem jak na dłuższą metę sprawdzi się czujnik ultradźwiękowy, jednak z jakiegoś powodu większość gotowych rozwiązań tego typu jest optyczna. Dobrą alternatywą dla takich skanerów może być stosunkowo niedrogi (w porównaniu do bardziej profesjonalnych układów) RPLIDAR.

Masz przewidziane jakieś zastosowanie dla takiego prjektu, czy robisz go czysto edukacyjnie?

To jest bardziej zabawa i chęć przekonania się możliwości tego czujnika.

Ten stosunkowo niedrogi jest dla mnie za drogi.

Prędzej sam bym coś zlutował na diodzie laserowej niż go kupił.

Ten stosunkowo niedrogi jest dla mnie za drogi.

Zdaje sobie sprawę, dla mnie również jest to drogie rozwiązanie, ale porównywałem to z gotowymi rozwiązaniami o takich możliwościach - ich koszt to tysiące złotych, albo i więcej 😉

Jak czasowo wypada zeskanowanie całego obszaru? Jak szybkie odświeżanie całego pola widzenia będziesz chciał uzyskać?

W zasadzie obydwa czujnik się blokuje na trudnych materiałach jak guma, skóra, tkaniny.

A serwo potrzebuje trochę czasu na ustawienie pozycji.

skmskm, próbowałeś skanować przy stałej, powolnej prędkości obracania czujnika? Wtedy nie powinieneś mieć problemów z ustalaniem pozycji.

Serwo jest bardzo szybkie w brew pozorom potrafi zrobić 180 stopni w mniej niż sekundę.

Nie da się nim sterować powoli(robi zrywy). Zresztą mnie prędkość nie przeszkadza.

Edit:

Zrobiłem skan w wysokiej rozdzielczości rolki taśmy.

IMG_540dc6f99e1957614.png

Syf po lewej to kabel który mi wchodził pod czujnik.

skanner 3D.zip

Jak wygenerowałeś obraz na podstawie danych?

Bardzo prosto openGL + GL_QUADS, pisałem gry typu RTS w openGL.

W moim poprzednim poście możesz zobaczyć kod.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...