Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Line Follower] MacLiner 2.0

MacGyver123 22 Sty 2013 17:20 16551 10
  • Witajcie, jest to ulepszona pod każdym względem wersja mojej pierwszej machiny MacLiner. Początkowy zarys konstrukcji pojawił się w mojej głowie po zawodach Sumo Challenge 2011, w których brałem udział (zająłem wtedy przedostatnie miejsce :D). Ta sytuacja bardzo zmotywowała mnie do stworzenia czegoś szybszego, zwinniejszego. Tak powstał MacLiner 2.0. Chciałbym serdecznie podziękować użytkownikowi Sabre, dzięki któremu mogłem liczyć na szybkie przesyłki z Chin i nieocenioną pomoc w innych przelewach. Dziękuje także Firmie SALTAND Prototype, która udzieliła mi ogromnej zniżki na obwody drukowane.

    Model w Inventorze
    Dzięki zastosowaniu najnowszych technologii jakie daje Pakie AutoCAD, mogłem z bardzo wielką dokładnością określić położenie wszystkich elementów. Plik w formacie .dwg został przekonwerowany za pomocą programu DXF2SCR na format, który mogłem w dalszym etapie otworzyć w EAGLE i takim sposobem miałem gotowy zarys obu płytek. Takie wariacje pomogły mi także w doborze frezów pod Enkodery. Do tego ostatniego z pewnością wrócę pod koniec opisu. Szkic z projektu zawarty na rysunku 1.
    [Line Follower] MacLiner 2.0
    rys.1 Model LF w programie Inventor

    Moduł Listwy z Czujnikami
    Jak dobrze wiadomo jest to element, na który działa największa siła bezwładności. W tej wersji zastosowałem parzystą liczbę czujników. Jest ich aż 20. Część osób pewnie stwierdzi, że jest ich dość sporo i tutaj się z Wami zgodzę, trochę przerost formy nad treścią, aczkolwiek ważne, że się sprawdza. Poniżej (rysunek 2) zamieściłem fotografię, na której widać rozstawienie sensorów linii (KTIR0711S). Pewnie zapytacie z czego zrobione są podpory, otóż jest to zwyczajna taśma izolacyjna - działała wyśmienicie :). Dodatkowo robot został zaopatrzony w czujnik zderzeniowy (GP2Y0D340K). Posiada on zasięg 40cm. Robot jadąc z predkością powyżej 2m/s potrzebuje z dużym wyprzedzeniem określić gdzie znajduje sie przeszkoda(cegła).
    [Line Follower] MacLiner 2.0
    rys.2 Moduł listwy z czujnikami

    Zasilanie
    W przpadku użycia robota z turbiną oczywiste staje się, że trzeba zastosować źródło napięcia o dość dużej wydajności prądowej. Wybór padł na pakiet Li-Pol(rysunek 3) o napięciu znamionowym 7.4v, pojemności 300mAh i wydajności prądowej równej 13.5A. Masa pakietu wynosi 23 gramy. Musiałem go troszkę zmodyfikować, a konkretnie złącze, ponieważ w pierwotnej postaci łatwo było o pomyłkę.
    [Line Follower] MacLiner 2.0
    rys.3 Pakiet Li-Pol Dualsky
    (zdjęcie pochodzi ze strony Botland.com.pl)

    Bezpośrednio z pakietu zasilane są silniki oraz napęd tunelowy. Większość elementów (mikrokontroler, czujniki, logika stopnia mocy oraz moduł bluetooth) wymagały napięcia 5V. Postanowiłem zastosować do tego celu przetwornicę ST1S10PHR. Bardzo zdziwił mnie fakt, że dość spora liczba osób skarżyła się na ten element. Przykładem może być "strzelająca turbina", o której sporo czytałem na forum. :) Osobiście wszystkie ścieżki poprowadziłem zgodnie z notą katalogową i do tej pory nie mam z nią najmniejszych problemów. Wyjątkiem jest moduł Bluetooth, który na płytce posiada stabilizator liniowy Low Dropout na 3.3v(LM1117), lecz zasilam go z układu BEC wbudowanego w sterownik silnika 3F(tego od napędu tunelowego). Poniżej przedstawiam schemat blokowy całego zasilania (rysunek 4).
    [Line Follower] MacLiner 2.0
    rys.4 Schemat blokowy zasilania

    Chassis - czyli bazowy element

    Główna płyta(rys.5):parametry: laminat FR-4, grubość 2mm, na której umieszczone są elementy take jak : Mikrokontroler ATmega 128, moduł TB6612, komparatory LM339D, przetwornica ST1S10PHR, odbiornik TSOP2236, złącze programatora. Zdecydowałem sie na użycie tak potężnego 8 bitowego procesora z paru względów: ogromna ilość wejść/wyjść (53), dobre ułożenie pinów, interface UART połączony z liniami programatora, 8 przerwań zewnętrznych. Nie zastosowałem 2. procesora do dekodowania kodu RC5 ponieważ, wydawało mi się to zbędne. Płytka powinna mieć grubość 1.5mm, tak jak było to w planach (ale wiadomo firma także może się pomylić :D).
    [Line Follower] MacLiner 2.0
    rys.5 Chassis

    Stopień mocy - TB6622FNG

    Jako sterownik silnikami zastosowałem gotowy, dwukanałowy moduł wyprodukowany przez firmę Pololu(rysunek 6). Doszedłem do wniosku, że nie warto stosować wiecej niż 1 mostek (przynajmniej na razie :)). Wydajnośc prądowa tego układu to 1A na kanał. Zdażały się sytuacje, gdzie robot w fazie testów zwyczajnie uderzał w elementy przed nim (np. ściana), lecz mostek za każdym razem wytrzymywał. ATmega komunikuje się z mostkiem za pomocą 7 linii(4-odpowiedzialne za kierunek, 2- sygnały PWM, STBY- wyłączenie układu).
    [Line Follower] MacLiner 2.0
    rys.6 Stopień mocy

    Bluetooth- czyli zapanuj nad bestią

    Na pokładzie robota znajduje się moduł bluetooth (BTM-222). Jak juz wczesniej wspomniałem, zasilany jest on z układu BEC. Jego zadaniem jest zdalne startowanie i zatrzymanie robota. Robot dzięki temu może zostać "sterowny" z poziomu np. telefonu, komputera. Układ zamontowany jest na baterii za pomocą rzepu przemysłowego. Na rysunku 7 zamieszczona jest mozaika ścieżek.
    [Line Follower] MacLiner 2.0
    rys.7 Moduł Bluetooth

    Aplikacja na telefon została napisana przeze mnie w środowisku NetBeans w języku Java. Program przystosowany zarówno na telelefon zaopatrzony w ekran dotykoy jak i pospolitą klawiaturę. Rysunek 8 zawiera screen z aplikacji.
    [Line Follower] MacLiner 2.0
    rys.7 MacLiner 2.0 APP

    Turbina- Up to 2m/s

    Napęd tunelowy jest teraz nieodzownym elementem każdego szybkiego robota. To dzięki niemu robot jest w stanie utrzymać się na torze przy prędkościach 2m/s. Poszedłem utartą scieżką i postanowiłem zakupić EDF27. Silnik, który znajduje się w turbinie potrafi rozpędzić wirnik do zawrotnych prędkości (prędkość łopaty zwiększa się o 11000 obrotów na każdy wolt). Niestety zapłaciłem najwyższą cenę przed zawodami Sumo Challenge 2012. Podczas testów do turbiny dostało sie ciało obce, w wyniku czego wirnik wpadł w oscylacje scierając się o tunel turbiny. Oczywiście na kolejne zawody zaopatrzyłem sie w kolejną. Silnikiem steruje regulator PLUSH 6A. Poniżej (rysunek 8) zdjęcie popularnego napędu tunelowego.
    [Line Follower] MacLiner 2.0
    rys.8 Turbina EDF27

    Napęd i Koła Robota

    *Napęd tworzą dwa silniki Pololu HP 10:1(wraz z tylną osią)
    *Parametry techniczne:
    *Obroty na biegu jałowym przy zasilaniu 6V: 3000 obr./min;
    *Prąd biegu jałowego (6V): 120mA;
    *Prąd szczytowy: 1600mA;
    *Moment obrotowy: 0,3 kg*cm (29 mNm);
    *Wymiary: 24 x 10 x 12 mm;
    *Masa: 10g
    Jako kół postanowiłem użyć znanych z mojej wcześniejszej konstrukcji - Pololu 32mm.

    Enkodery - Szósty zmysł

    W robocie zostało przewidziane miejsce na enkodery optyczne wymontowane z myszki. Będą one w przyszłości służyły do mapowania trasy oraz jednej ciekawej rzeczy(Wizja podczas snu :D). Jeśli projekt z dodaniem enkoderów się uda, z pewnością się nim podziele.

    Program

    Program został napisany w języku C w środowisku AVR-Studio. Zaimplementowany algorytm proporcjonalno-rózniczkujący pozwolił na płynną jazdę z dużą prędkością. W przyszłości kod zostanie przepisany na jezyk niskiego poziomu jakim jest Asembler.


    Osiągnięcia
    •III miejsce Line Follower z Przeszkodami Sumo Challenge 2012 (bez Turbiny)
    •VII miejsce Line Follower Sumo Challenge 2012 (bez Turbiny)
    •VII miejsce Line Follower Robotic Arena 2012

    Tips- porady :)

    [Line Follower] MacLiner 2.0

    Podczas zawodów przez przypadek można dojść do paru fajnych odkryć. Szczotki- powszechnie stosowane jako "magnes" na zanieczyszczenia kół. Mi osobiście wpadł także całkiem ciekawy pomysł. Stało się podczas Robotic Arena 2012. Moje włosy zawsze wymagały ułożenia przed jakimkolwiek wyjściem. Dlatego zawsze biorę ze sobą pojemnik z gumą do stylizacji włosów :D. W czasie poszukiwania lustra dostałem olśnienia- Dlaczego nie użyćby tego specyfiku do czyszczenia bieżnika opon przed startem...? Pomysł okazał sie strzałem w dziesiątkę! :)

    Filmy:(bez Turbiny)

    Link


    Link


    Link


    Link


    Link






    Galeria
    A tutaj zbiór fotografi:
    [Line Follower] MacLiner 2.0[Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0 [Line Follower] MacLiner 2.0


    W załącznikach dodaję:
    *Schematy płytek;
    *Program na telefon;
    *Mozaiki płytek.

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    MacGyver123
    Poziom 10  
    Offline 
    MacGyver123 napisał 45 postów o ocenie 25, pomógł 0 razy. Jest z nami od 2010 roku.
  • #2
    siurdack2moderator
    Poziom 10  
    A ja mam takie laickie pytanie nie tylko do autora. Do napędu kół wykorzystywane są silniki szczotkowe a dlaczego nigdy w takich robotach nie stosuje się silników 3f?
  • #3
    MacGyver123
    Poziom 10  
    Jak to nigdy :D o ile mnie pamięć nie myli to w LF Thunderstorm zastosowano silniki 3F. Myśle, że rzadko stosuje się właśnie to rozwiązanie ze względu na cenę. Trzeba wliczyć w to koszta samych silników, regulatorów, przekładni. W przypadku tych silników szczotkowych problem częsciowo się rozwiązuje.
  • #4
    dondu
    Moderator Mikrokontrolery Projektowanie
    Gratuluję konstrukcji i rezultatów ( o ile jesteś z nich zadowolony)! :)

    Na pierwszym filmie widać, że podczas pokonywania pierwszego zakrętu robot wpadł w znaczny poślizg, a przyczyną był zapewne przede wszystkim brak turbiny. Pytania w tym zakresie:
    1. Czy algorytm przewidywał hamowanie silnikami (pewnie tak)?
    2. Jaką prędkość mógł mieć robot na wejściu w pierwszy zakręt?
    3. Jaka odległość jest potrzebna na wyhamowanie z tej prędkości do zera, z użyciem silników i bez turbiny?
    4. Ile ważył robot w konfiguracji z tego filmu?
  • #5
    MacGyver123
    Poziom 10  
    Dziękuję, konstrukcja spełniła moje oczekiwania, pozostaje jeszcze tylko dodanie enkoderów i wtedy będę naprawdę zadowolony.

    Ad1. Tak, algorytm przewidywał hamowanie silnikami (przeciw prądem). Jeśli robot jedzie po prostej i natrafi zakręt o kącie prostym,regulator automatycznie daje wypełnienie bliskie 90% na jedno z kół, natomiast drugie kreci sie z wypełnieniem bliskim 10%, lecz o przeciwnym kierunku.
    Ad2. Myślę, że robot osiągną prędkość około 1.2-1.5m/s.
    Ad3. Jeśli robot będzie jechał z prędkością jak powyżej i nagle dostanie sygnał, aby koła zaczęły obracać się w przeciwnym kierunku to będzie to trwało krótką chwilę. Robot pokona naprawdę małą odległość. W trakcie korzystania z funkcji startowania i hamowania LF z poziomu telefonu, robot dostaje właśnie prąd o przeciwnym kierunku i wtedy droga hamowania robota oscyluje w granicach do 5cm.
    Ad4. Niestety nie posiadam wagi, ale na moje oko konstrukcja waży około 130gram.
  • #6
    dondu
    Moderator Mikrokontrolery Projektowanie
    Z 1,5m/s w 5cm bez turbiny? Z uwzględnieniem gumy do stylizacji fryzur, czy bez?

    Jak przyczepne są te opony bez użycia tej dodatkowej gumy? Albo jak bardzo zwiększa ona ich przyczepność?

    Czy z powodu wykorzystania gumy miałeś kłopoty z testem przyklejania się kartki przed zawodami (o ile taki był)?
  • #7
    MacGyver123
    Poziom 10  
    Tak, 5cm z turbiną i gumą(kiedy miałem robota bez turbiny, nie miałem pojęcia o gumie). Podam na przykładzie jakie miało miejsce na zawodach. Pewien zawodnik testował swojego robota, lecz bardzo nim kołysało na boki (taki drift), po zastosowaniu gumy dynamika robota zmieniła sie diametralnie, wychylenia zanikły.
    W kategorii LF nie ma testu z kartką(za to jest w sumo i minisumo).
    EDIT: sprawdziłem test i okazało się, że podnosząc robota kartka zostaje na miejscu.
  • #8
    dondu
    Moderator Mikrokontrolery Projektowanie
    MacGyver123 napisał:
    W kategorii LF nie ma testu z kartką.

    Czyli test jest tylko w sumo?

    MacGyver123 napisał:
    EDIT: sprawdziłem test i okazało się, że podnosząc robota kartka zostaje na miejscu.

    A jak dużo tego nakładasz?
  • #9
    MacGyver123
    Poziom 10  
    Biorę na palec sporą porcję. Jest jej na tyle, że pokrywa oponę około 1mm. Następnie przecieram ją sciereczką.
  • #10
    seba_x
    Poziom 31  
    Napisz jaka jest wartość potencjometru R1 przy komparatorach.
  • #11
    MacGyver123
    Poziom 10  
    Wartość ta wynosi 20K


    Zawody Sumo Challenge 2013 - II miejsce w LF z Przeszkodami