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

[Linefollower] Wolverine

Razonek 11 Lut 2012 10:12 5537 11
  • [Linefollower] Wolverine
    Witam! Chciałbym zaprezentować Wam robota klasy line follower. Płytkę zaprojektował użytkownik Harnaś,
    ja polutowałem oraz napisałem program. Płytka robota składa się z dwóch części i jest skręcona. Płytki były wykonane w firmie Satland.
    Wszystkie elementy które występowały w obudowie SMD zostały wykorzystane, reszta czyli 3 kondensatory, wyłącznik oraz złącza goldpin są w obudowach THT.
    Dodam również że szkoła jest sponsorem robota.

    Mechanika
    Wolverine wyposażony jest w dwa silniki Pololu w wersji HP i przekładnią 30:1. Silniki zasilane są z 5V. Z przodu nie ma ballcasterów za to są dwie diody LED,
    podtrzymujące przód, niestety diody nie świecą, a myślę że byłoby to ciekawe.

    Elektronika
    Mózgiem jest tutaj ATmega16-AU taktowana zewnętrznym kwarcem 16 MHz. Jej potencjał nie jest chyba nawet 1/100 wykorzystywany.
    Do sterowania silnikami zostały wykorzystane mostki TB6612FNG, po jednym na silnik. Myślę, że są to bardzo dobre mostki. Jest na nich minimalny spadek napięcia.
    Pod tylną częścią robota zostało zamontowanych 18 niebieskich diod LED. Które efektownie podświetlają robota. Dodatkowo pod silnikami znajdują się diody rgb, lecz
    jeszcze nie zostały wykorzystane, jedna z nich ładnie świeci podczas programowania. Do stabilizacji napięcia dla logiki został wykorzystany stabilizator liniowy LF50,
    a do stabilizacji napięcia podawanego silnikom została wykorzystana przetwornica DC-DC, Step down, LM2576 o wydajności prądowej 3A. Ta przetwornica potrzebuje dużego dławika 100 uH,
    z racji tego wykorzystałem dławik tylko 56 uH. Mimo tego Buck spisuje się dobrze. Dodatkowo przed odwrotnym podłączeniem baterii i w konsekwencji spalenia części logiki została zastosowana
    dioda bezpośrednio za złączem na akumulator, która niestety nie zabezpiecza przetwornicy. Już raz przez pomyłkę podłączyłem na odwrót baterię i przetwornica poszła z dymem.

    Czujniki
    W robocie znajduje się 16 czujników lini - KTIR0711S, malutkie czujniki, o stabilnym działaniu. Myślę że 16 czujników to takie optimum lecz gdybym robił w przyszłości LF'a
    to wykorzystał bym ich 20 lub 24. Sygnał z czujników idzie bezpośrednio do ADC, pierw odczytuję 8 pierwszych czujników od lewej, potem przełączam mosfetem (IRF 7101) zasilanie na czujniki z prawej strony i odczytuję od początku. Najzwyklejszą multipleksacją.
    Oraz jeden cyfrowy czujnik odległości 40cm - Sharp GP2Y0D340K, nie został jeszcze użyty, a nawet miał wypadek, nie wytrzymał zderzenia robota ze ścianą i po prostu odpadł.


    Zasilanie




    Zasilaniem całego robota jest akumulator Li-Pol, dwu celowy o pojemności zaledwie 500 mAh. Jest to pojemność w zupełności wystarczająca do przejazdów na zawodach, przy okazji zapewniająca małą wagę
    bo cały akumulator waży 36 gram choć podczas testowania robota trzeba robić sobie co chwilkę przerwę na podładowanie akumulatora.


    Program
    Cały kod to moje wypociny, tutaj poduczyłem się programować lecz nadal to nie jest to coś. W miarę zdobywania kolejnej wiedzy będę starał się udoskonalać kod, aby robot był szybszy.
    Gdyby ktoś zobaczył aktualny kod to pewnie by się za głowę chwycił i nie wiedział w którą stronę uciekać.
    Sterowaniem zajmuje się upośledzony wytwór wyobraźni przy czym był wzorowany na PID'zie a konkretniej to na samym " :P", lada moment zostanie dodany człon "D".
    Jak już wspomniałem albo i nie, jestem początkujący, lecz teraz bogatszy o nowe doświadczenia.


    Podsumowanie
    Dużo się nauczyłem, co zaowocuje w przyszłości może kolejnymi, lepszymi robotami. Teraz wiem że nie jest to takie łatwe jak się wydawało na początku. I to by było na tyle. Zachęcam do oceniania oraz komentowania.
    Tutaj filmik z przejazdów na aktualnym programie.

    Link


    Gdy go poprawię wrzucę nowe filmiki. Koszt tego robota to około 500zł wraz z przesyłkami, ale jak już wspomniałem - szkoła sponsorowała.

    [Linefollower] Wolverine [Linefollower] Wolverine [Linefollower] Wolverine [Linefollower] Wolverine

    Temat powinien wylądować w śmietniku za użyte słownictwo. Proszę się powstrzymać od wulgarnych słów. Następnym razem będą wyciągnięte konsekwencje.
    [Djpopak;)]


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz pendrive 32GB.
  • #2 11 Lut 2012 17:22
    ahmed10
    Poziom 11  

    Fajna konstrukcja!!, mam pytanie odnośnie szybkości robota, czy prędkość z którą na filmiku jedzie Wolverine to maksymalna jaką rozwija czy jest to jakiś procent maksymalnej prędkość a jak tak to ile ten procent wynosi??

    PS: te neony robią piorunujące wrażenie jak na mój gust:))

  • #3 11 Lut 2012 18:04
    Razonek
    Poziom 10  

    Prędkość robota nie jest maksymalna a ogranicza ją tylko moja zdolność programowania. Myślę że to jego 70% możliwości

  • #4 11 Lut 2012 18:07
    malpek
    Poziom 17  

    W jakim języku go zaprogramowałeś? Można prosić o kod źródłowy.

  • #5 11 Lut 2012 18:30
    Razonek
    Poziom 10  

    Napisane w C. Kodu nie udostępnię na razie, jest nie dopracowany i za długi.

  • #6 11 Lut 2012 19:36
    kajtaskajtas
    Poziom 12  

    Akumulator rozumiem dwie cele, 7,4V, tak? Bo zastanawia mnie po co dawałeś tą przetwornicę na lm2576 skoro i tak ograniczasz prędkość silniczków PWMem?

  • #7 11 Lut 2012 20:42
    Razonek
    Poziom 10  

    Pisze że 2 cele. A wyobrażasz sobie sterowanie tym robotem bez PWM'a? I pomyśl jaki wpływ ma rozładowująca się bateria na niestabilizowane zasilanie silników? Bez stabilizacji musiałbym mieć przynajmniej enkodery aby robot jeździł z jedną prędkością cały czas niezależnie od naładowania akku. Tutaj kolejny problem bo na samym początku gdy potencjał baterii jest wysoki, musiał bym ograniczać prędkość robota. Silniki są na 6V.

  • #8 11 Lut 2012 20:43
    ilmenauer
    Poziom 14  

    Jeśli chodzi o bilans mocy traconej to proponowane rozwiązanie jest bez rewelacji. Autor napisał, że mostek ma mały spadek napięcia - producent gwarantuje 0.5 Ohm otwartego "zaworu" więc już przy 1A będzie to spadek 0.5V
    Dioda "zabezpieczająca" na wejściu to następny spadek napięcia. Analogicznie przy 1A da spadek 0.7V
    Stabilizator do zasilenia mostka H wydaje się zupełnie bezcelowy. Kontrolę mocy można zrealizować ograniczając PWM a używając do zasilenia motoru napięcia baterii.
    Ograniczenie producenta silnika "max. 5V" sprowadza się tak naprawdę do maksymalnej mocy strat. Przykładowo przy zasileniu 7V tego silnika należało by ograniczyć wypełnienie PWM do około 50%.

  • #9 11 Lut 2012 21:01
    Razonek
    Poziom 10  

    Szczerze? To ja nie widziałem jeszcze LF'a bez stabilizacji dla silników. Widziałem mm w których są enkodery. W czym programujesz i co zrobiłeś że twierdzisz że tutaj stabilizator jest
    bez celowy? Gdybym nie miał stabilizacji to na początku było by ok, ale po chwili PID'o podobny regulator by się rozjechał i bym mógł wypadać z zakrętów. Nie wiem jak to policzyłeś ale ja na wyjściu przy działających silnikach mam niecałe 4,7V

  • #10 12 Lut 2012 13:33
    gbd.reg
    Poziom 21  

    Można prosić o zdjęcia całości konstrukcji w świetle dziennym?

  • #11 12 Lut 2012 13:55
    krzysiek_p
    Poziom 13  

    Widać, że koledzy krytykujący wykorzystanie przetwornicy nie mają pojęcia o tym, jak ważne są nastawy PID w szybkich robotach. Wystarczy, żeby napięcie na silnikach spadło o 0,5-1V i już nastawy, które są przestają być najlepszymi możliwymi nastawami. Teoretycznie można by regulować je dynamicznie, ale to z kolei pociąga za sobą wchłonięcie części mocy obliczeniowej, która w linefollowerach jest na wagę złota (co prawda akurat w tym egzemplarzu nie jest jeszcze super wykorzystana). Wrzucenie sprzętowej stabilizacji napięcia dla silników pozwala na wrzucenie do uC najważniejszego zadania - obliczania PID i PWM dla lewego i prawego silnika.

  Szukaj w 5mln produktów