Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Lidar DIY - oparty o dalmierz laserowy i Arduino

ghost666 06 Nov 2015 11:57 13173 16
Altium Designer Computer Controls
  • Lidar DIY - oparty o dalmierz laserowy i Arduino
    Autora do realizacji opisanego poniżej projektu skłonił zakup prostego dalmierza laserowego - wykorzystując takie urządzenie, można skonstruować prosty LIDAR. Wykorzystany w projekcie dalmierz ma dokładność ±2 mm i jest w stanie mierzyć odległości do 45 m - to dostatecznie dużo jak na potrzeby autora.

    Co jeszcze będzie potrzebne do realizacji zadania oprócz samego dalmierza:

    * Moduł Arduino Mega
    * 2 x serwomotory
    * Pochył sterowany poprzez serwomotor
    * Układ LM317 i inne elementy do konstrukcji zasilacza 3 V
    * Zasilacz 5 V, 3A dla całego systemu.
    * Kabelki, złącza etc.

    Krok 1: Dalmierz UT390b i jego możliwości

    Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino


    W sieci można odnaleźć informacje odnośnie wykorzystanego w projekcie dalmierza UT390b oraz sposobu w jaki odczytywać można z niego dane przez port szeregowy. Istnieją też specjalnie biblioteki, np. do Arduino, dedykowane do obsługi tego urządzenia. W poszukiwaniu informacji można odwiedzić poniższe strony:

    * https://github.com/erniejunior/UT390B_Arduino_Library
    * http://blog.qartis.com/arduino-laser-distance-meter/
    * http://blog.qartis.com/laser-distance-meter-update-serial-commands-timing-measurements/

    Do połączenia z dalmierzem potrzebne są jedynie trzy przewody - masa, RX i TX - które podłącza się do urządzenia do złącza pod klapką baterii. W instrukcji, dostępnej pod powyższymi linkami, znaleźć można rozpiskę złącza. Trzeba przylutować trzy przewody do gniazdka i już - prawie gotowe. Uwaga! Sygnał TX pochodzący z Arduino jest w standardzie 5 V, a to napięcie jest zbyt wysokie dla dalmierza i może go uszkodzić. Aby tego uniknąć, wystarczy podłączyć go do Arduino poprzez dzielnik napięciowy.

    Innym problemem jest to, że UT390b wyłącza się czasami automatycznie lub na skutek wygenerowania jakiegoś błędu. Żeby rozwiązać ten problem, trzeba wymienić baterie na zasilacz i dodać zdalny reset. Do konstrukcji zasilacza autor projektu wybrał układ LM317.

    Gdy dalmierz wykryje błąd, trzeba wyłączyć i włączyć ponownie mu zasilanie, a następnie nacisnąć przycisk ON, jeśli po prostu wyłączy się automatycznie to wystarczy samo naciśnięcie przycisku ON.

    Krok 2: Pomiary

    Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino


    Aby rozpocząć pomiary, trzeba nacisnąć przycisk. Następnie dwa serwomotory zmieniają pozycję dalmierza, przemiatają zadany obszar. Dla każdej pozycji - określanej z pomocą dwóch kątów: Φ oraz θ - wartość zmierzonej odległości przesyłana jest do komputera i zapisywana na dysku.

    Krok 3: Wizualizacja danych.

    Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino Lidar DIY - oparty o dalmierz laserowy i Arduino


    Gdy wszystkie dane spłyną do komputera - kąty i odległość - chcemy móc zaprezentować graficznie wyniki pomiaru. Niestety nie udało się odnaleźć gotowego oprogramowania tego rodzaju, gdyż siatka pomiarowa programu nie jest jednorodna, ale na szczęście autor stworzył kiedyś (20 lat wcześniej) program do wizualizacji map topograficznych w 3D. Oprogramowanie napisane jest w Turbo Pascalu i pozwala na rysowanie map na podstawie dostarczonych danych.

    Korzystając z programu, można wizualizować dane pochodzące z LIDARu. Klawiatura pozwala na płynne obracanie i translację widoku 3D, a także na zmianę punktu obserwacji itp.

    Krok 4: wyniki



    Skanowanie pokoju było pierwszym testem przeprowadzonym z wykorzystaniem LIDARu. Niektóre linie na obrazie 3D są odrobinę zniekształcone ponieważ podczas obrazowania autor musiał zdjąć dalmierz z podstawy w urządzeniu, aby go ponownie włączyć. System resetowania dalmierza został dodany później, zwiększono też stabilność podstawy, tak więc produkowane teraz obrazki są o wiele lepsze.

    Źródło: http://www.instructables.com/id/Simple-LiDAR-using-the-laser-rangefinder-Uni-T-UT3/?ALLSTEPS

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    ghost666
    Translator, editor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 wrote 11035 posts with rating 9362, helped 157 times. Live in city Warszawa. Been with us since 2003 year.
  • Altium Designer Computer Controls
  • #2
    User removed account
    User removed account  
  • Altium Designer Computer Controls
  • #3
    ghost666
    Translator, editor
    Mictronic wrote:
    Jak działa taki dalmierz? Co jest bezpośrednio detektorem i jak wykrywa się wiązke z takiej odległości?


    https://en.wikipedia.org/wiki/Laser_rangefinder
  • #4
    User removed account
    User removed account  
  • #5
    teofil111
    Level 13  
    Elektronicznie nie ma dużego problemu aby zmierzyć czas pomiędzy wysłaniem wiązki lasera a jej odebraniem. Im szybszy licznik tym większa precyzja, prawdopodobnie wiązka jest dodatkowo zmodulowana aby odfiltrować przy odbiorze inne źródła światła, jak w odbiornikach IR.
  • #7
    maciej_333
    Level 37  
    deus.ex.machina wrote:
    Mictronic wrote:


    Brak konkretów, interesuje mnie strona elektroniczna rozwiązania jak w tych prostych dalmierzach.


    TDC - od jakiegoś czasu są dostępne relatywnie tanie scalone TDC.
    http://www.acam.de/fileadmin/Download/pdf/TDC/English/AN034_en.pdf

    Dokładnie tak jest to wykonywane. Na Timerach wbudowanych w mikrokontroler trudno byłoby uzyskać odpowiednią rozdzielczość. Przykładem może być też TDC7200 z Texas Instruments. Ma rozdzielczość pomiaru czasu niby 55 ps. Światło wysłane przez laser pokonuje drogę równą dwukrotnej odległości od nadajnika do obiektu. Zatem zakładając c = 3*10^8 m/s uzyskać można rozdzielczość pomiaru odległości 27,5 ps * 3*10^8 m/s = 8,25 mm. Jest to oczywiście bardzo teoretyczne stwierdzenie. Konieczne byłoby uśrednienie jakiejś serii pomiarowej.

    teofil111 :arrow: Inna sprawa, że wysyłany impuls musi być bardzo krótki, by mierzyć małe odległości. Nie wiem jak zatem można to modulować w prosty sposób. W pilotach IR wszystko odbywa się na zupełnie innej zasadzie.
  • #8
    deus.ex.machina
    Level 32  
    maciej_333 wrote:

    Dokładnie tak jest to wykonywane. Na Timerach wbudowanych w mikrokontroler trudno byłoby uzyskać odpowiednią rozdzielczość. Przykładem może być też TDC7200 z Texas Instruments. Ma rozdzielczość pomiaru czasu niby 55 ps. Światło wysłane przez laser pokonuje drogę równą dwukrotnej odległości od nadajnika do obiektu. Zatem zakładając c = 3*10^8 m/s uzyskać można rozdzielczość pomiaru odległości 27,5 ps * 3*10^8 m/s = 8,25 mm. Jest to oczywiście bardzo teoretyczne stwierdzenie. Konieczne byłoby uśrednienie jakiejś serii pomiarowej.

    teofil111 :arrow: Inna sprawa, że wysyłany impuls musi być bardzo krótki, by mierzyć małe odległości. Nie wiem jak zatem można to modulować w prosty sposób. W pilotach IR wszystko odbywa się na zupełnie innej zasadzie.


    To akurat jest dość proste ale pytanie jest o to co jest wspierane przez demodulator.
    Zawsze można użyć kodu Barkera
  • #9
    maciej_333
    Level 37  
    Zakładając minimalną odległość mierzoną na 1 m i c = 3*10^8 m/s uzyskać można maksymalny czas trwania impulsu: 2 m / 3*10^8 m/s = 6,67 ns. Zakładając np. 7 bitów dowolnego kodu, wychodzi 6,67 ns / 7 = 0,95 ns. Wychodziłoby zatem, że światło należałoby modulować z przepływnością prawie 1 Gb/s. W telekomunikacji nie jest to dziś aż tak dużo, ale w tanim urządzeniu z pewnością się czegoś takiego nie robi. Moim zdaniem rolę odgrywa tu statystyka i czułość odbiornika na określoną długość fali. Może być też zastosowana przesłona na fotodiodzie odbiornika, dobrana do długości fali lasera.

    Moim zdaniem demodulator to tylko fotodioda, ewentualna przesłona, wzmacniacz transimpednacyjny i komparator z pętlą histerezy.
  • #10
    User removed account
    User removed account  
  • #12
    slawek-matyl
    Level 11  
    Coś mi się wydaje że taki dalmierz nie pracuje na zasadzie pomiaru czasu przelotu. Po pierwsze zastosowana dioda laserowa świeci w zakresie widma czerwonego, nie jest to typowy laser impulsowy pracujący w podczerwieni. Zasada działania będzie opierała się na triangulacji, lub bardziej prawdopodobne: na przesunięciu fazy modulowanego sygnału ciągłego. Dalmierze time to fly nie są dokładne co to mm, raczej stosuje się je na duże odległości i przeważnie działają w bliskiej podczerwieni 905-1550nm
  • #13
    User removed account
    User removed account  
  • #14
    maciej_333
    Level 37  
    Mictronic wrote:
    Czyli zmodulowana wiązka jakąś dowolną częstotliwościa, zostaje wysłana, odbija sie od obiektu, wraca do odbiornika i miesza się z częstotliwością nadawczą. Czyli dla małych odległości częstotliwość będzie bardzo bardzo mała? Czy to stąd wynika tak wolne odświeżanie pomiaru?

    Może tak też być. Wystarczyłoby kluczować laser jakąś niską częstotliwością. Nie sądzę by było potrzebne więcej niż kilkadziesiąt kHz. Potem mierzy się przesunięcie fazowe odebranego sygnału względem nadawanego. Wystarczy zatem prosty detektor amplitudy. Potem i tak może to iść do TDC. Żadnych analogowych mieszaczy się raczej nie stosuje. Zresztą tu obie częstotliwości będą takie same. Wolne odświeżanie wynika prawdopodobnie z potrzeby uśredniania serii pomiarów.
  • #15
    slawek-matyl
    Level 11  
    Tutaj macie jak to leica robi: Link
    Tu też ciekawostka Link

    Oczywiście że wolna praca wskazuje na uśrednianie pomiarów, co zwiększa stosunek sygnał / szum.
    Typowy dalmierz impulsowy wysyła jeden impuls, jednak istnieją dalmierze podszumowe, wysyłające paczkę impulsów Link
  • #16
    User removed account
    User removed account  
  • #17
    slawek-matyl
    Level 11  
    Trochę skąpe te informacje podałeś, nie bardzo rozumiem co gdzie i jak. Jeśli się da spisać, to spisz nazwy scalaków pozostałych na płytce. Na drugiej stronie PCB coś jest albo nie rozbierałeś? Napięcie 100 V to tak jak mówisz napięcie polaryzacji fotodiody. W opisie używaj albo laser oraz fotodioda, tak to ciężko zrozumieć o którym elemencie myślisz pisząc dioda. Na początek wypadało by zaobserwować przebieg na laserze, najlepiej było by mierzyć napięcie na anodzie i katodzie różnicowo. Pamiętaj że często różnica pomiędzy minimalną a maksymalną mocą lasera to około 100 mV napięcia przewodzenia. Dużo lepiej było by mierzyć prąd, jest znaczna różnica w pomiarze prądu pomiędzy mocą maksymalną Pmax a początkiem generowania Ith.
    Nie ukrywam też mnie interesuje co tam wykombinowali