Skocz do zawartości

JarekK

Users
  • Zawartość

    9
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    5

JarekK zajął 1. miejsce w rankingu.
Data osiągnięcia: 10 marca 2013.

Treści użytkownika JarekK zdobyły tego dnia najwięcej polubień!

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Tarnów
  • Moje zainteresowania:
    Elektronika, Robotyka, Modelarstwo, CNC

Osiągnięcia użytkownika JarekK

Wynalazca

Wynalazca (6/19)

  • Za 5 postów
  • Młodszy roboty
  • Młodszy Juror
  • Wschodząca gwiazda
  • Lokalna gwiazda

Odznaki

32

Reputacja

  1. Informacja dla osób planujących przyjechać na zawody w sobotę rano: Z racji, że jadę z kolegą z Krakowa autem, możemy po drodze (tj. Częstochowa, Łódź, Włocławek, Toruń itd.) zabrać dwie dodatkowe osoby. Przyjazd do Gdańska planowany jest na godzinę 8, następnie zawody i nocleg w Gdańsku, rano wyjazd do Torunia na kolejne zawody i powrót tą samą trasą w niedzielę wieczorem. Koszty uzależnione od długości trasy 🙂 reszta do ustalenia, osoby zainteresowane proszę o kontakt, najlepiej bezpośrednio na maila jarekkorus@gmail.com
  2. JarekK

    Thunderstorm

    Soft był pisany w C++ z wykorzystaniem biblioteki Qt. Ja nie jestem jego autorem, dlatego za dużo w tym względzie Ci nie pomogę, ale jeśli będziesz miał jakieś pytania to mogę dopytać kolegi, który pisał ten soft. To, że zostawia ślady wynika z zastosowania takich a nie innych kół, za to zapewniają one dużą przyczepność. Tak jak w każdych poważnych wyścigach, trasa po kilku przejazdach staję się coraz bardziej nagumowana 🙂 Gibanie to efekt stosowania sprzężenia z enkodera do zadania konkretnej prędkości na kole. Taki układ serwa DC jakim można nazwać napęd jednego z kół ma tendencje przy konkretnych nastawach do wpadania w drgania. Przy dużej masie robota i bardzo szybkich zmianach wartości zadanej, układ ten posiada pewne oscylacje, które są widoczne w własnie w postaci gibania. Podczas zawodów nie mamy za bardzo możliwości zmian nastaw regulatorów w mostkach sterujących silnikami, zmieniamy jedynie parametry związane z kontrolą linii. Z doświadczenia widzimy, że sam regulator w mostku ma większe znaczenie niż regulator kontrolujący linię. Widać to na poniższym porównaniu filmów z jazd robota. Pierwszy film przedstawia jedne z pierwszych testów Thunderstorma, gdy nastawy w mostkach znacznie różniły się od obecnych, układ często wpadał w drgania. Największym problemem było utrzymanie się nie na zakrętach a właśnie na prostej. W drugim filmie widać niedawne testy mostków (po RA 2012), gdzie zostały dobrane nowe nastawy mostków, zmodyfikowana różniczka i jeszcze jakieś małe zmiany algorytmu. W efekcie tego widać, że robot zdecydowanie lepiej radzi sobie na prostych, wpada w dużo mniejsze oscylacje. Przy nowych nastawach oceniamy, że może jeździć jeszcze szybciej niż wcześniej o około 5 - 15%. 1 2
  3. JarekK

    Thunderstorm

    W przypadku tych modułów nie jest wykorzystywany UART, korzysta się tam z magistrali SPI, dokładne dane tego modułu można znaleźć tutaj. W pilocie jest taki sam moduł i to on odbierał dane podczas przesyłu do PC, a procek z pilota wysyłał to dopiero do PC po UART poprzez układ FT232. Z tego co pamiętam dane na temat uchybu i sterowania były przesyłane z częstotliwością 250Hz. Ramka przesyłana do PC miała 20 znaków ASCII. Nie do końca, ma kilka mm zapasu 🙂
  4. JarekK

    Thunderstorm

    1. Robot po linii prostej może poruszać się z prędkością około 10 m/sek, programowo wartość ta jest ograniczona do około 5 m/sek, a docelowo po trasie porusza się z prędkością 2 - 3,3 m/sek (trasa w postaci okręgu o średnicy 1,2 m) . Dla przykładu średnia prędkość robota na pierwszym filmie po uwzględnieniu długości trasy to niewiele ponad 2,5 m/sek. 2. Tak, cała oś jest łożyskowana, silnik również jest na łożyskach, jedynie środkowa zębatka pracuje na panewce. 3. Nie było problemów, tego typu mocowanie stosowane jest w samochodach RC i tam wszystko działa dobrze o ile się dobrze dokręci nakrętkę. 4. Moduły te wykorzystywałem w innych moich projektach, w Thunderstormie nie było z nimi żadnych problemów. 5. Standardowo podczas zawodów nic nie jest przesyłane podczas jazdy, jedynie działa START/STOP i zmiana parametrów. Na potrzeby sesji kół naukowych został zrobiony przesył danych podczas jazdy a do tego aplikacja na PC. Efekty widać na poniższym rysunku. Nas ten druk nic nie kosztował, ale orientacyjna cena to około 400zł. Tak też można zrobić, ale chcieliśmy uprosić do maksimum komunikacje miedzy modułami, do tego same mostki można by zastosować w innych aplikacjach. Ich sterowanie jest wtedy bardzo proste.
  5. Korzystając z wolnej chwili, nadszedł czas na opisanie robota Thunderstorm na łamach portalu Forbot. Konstruktorami tego robota jestem ja oraz mój kolega Adam Fleszar. Na początku marca robot ten będzie obchodził swoje pierwsze urodziny. Zapraszamy do zapoznania się z jego opisem. Mechanika Konstrukcja robota Thunderstorm opiera się na korpusie wydrukowanym w technologii 3D z tworzywa ABS. Projekt tego elementu powstał w programie Autodesk Inventor 2012, kształt tej części jest zaprojektowany zgodnie z naszą intuicją i nie był optymalizowany pod żadnym kątem. Do korpusu przykręcony jest biały przód wykonany w tej samej technologii, do którego przymocowana jest płytka z 19-nastoma czujnikami rozmieszczonymi po łuku. Płytki PCB przymocowane są do wydrukowanych na korpusie kominków. Jako napęd zastosowaliśmy modelarskie silniki DC. Koła zębate użyte w przekładni pochodzą z serw TowerPro. Mocowania przekładni w postaci płaskowników aluminiowych zostały wykonane na mojej obrabiarce CNC. Oś koła stanowi pręt o średnicy 3mm wymontowany z napędów CD/DVD, nagwintowany na jednym z końców gdzie osadzona jest zębatka napędzająca koło. Na osi znajduję się również tarcza enkodera wymontowana z myszki kulkowej. Koła zastosowane w robocie pochodzą z modeli RC. Thunderstorm wyposażony został w turbinę, która przysysa robota do trasy. Napędzana jest ona silnikiem BLDC o mocy 200W sterowanym za pomocą regulatora 3F Jeti Advance 18 Pro. Jako ślizgacze zostały użyte trzy plastikowe kulki z ASG o średnicy 6mm. Elektronika Projektowana elektronika została podzielona na dwa współpracujące ze sobą systemy. Pierwszym z nich jest moduł mostka H sterujący silnikami napędowymi. W robocie znajdują się dwa takie układy, pracujące przy każdym kole niezależnie od siebie. Ich zadaniem jest dokładne kontrolowanie prędkości obrotowej kół na podstawie sygnałów z enkoderów zamocowanych na osi każdego koła. Drugim modułem jest układ, którego głównym celem jest odczyt linii i wygenerowanie odpowiedniego sterowania niezależnie dla lewego i prawego koła w robocie. Ponadto układ ten umożliwia komunikację z pilotem stosując gotowe moduły transmisji radiowej TLX905 oraz ma możliwość generowania sygnału o zmiennym wypełnieniu, koniecznym przy sterowaniu regulatorem prędkości obrotowej turbiny. Płytka z czujnikami znajduje się w przedniej części robota, a sygnały, które z niej wychodzą są podpięte do płytki kontrolującej linię przy pomocy dwóch tasiemek 12-żyłowych każda. Płytki PCB zostały wykonane w firmie Satland Prototype. Moduł sterownika silnika DC wyposażony jest w mikrokontroler ATmega88PA pracujący z częstotliwością 20MHz. Sam mostek H zbudowany jest z czterech tranzystorów IRF6668 w obudowach DirectFET sterowanych dwoma układami IR2104S. Częstotliwość sygnału PWM sterującego silnikiem wynosi 19,5kHz. Sterownik ten otrzymuje sygnał kroku i kierunku z kontrolera linii. Jedno zbocze narastające sygnału kroku odpowiada za obrót osi koła o jedną jednostkę enkodera w stronę wyznaczoną przez sygnał kierunku obrotu. Kontroler linii zbudowany jest w oparciu o mikrokontroler ATmega128A @ 16MHz. Sygnał z czujników linii KTIR0711S podawany jest na komparatory LM339 a następnie w postaci sygnału logicznego na wejścia mikrokontrolera. Moduł sterownika linii generuje dwa sygnały o zmiennej częstotliwości sterujące prędkością obrotową lewego i prawego koła jednocześnie. Do zasilania tego modułu jest wykorzystana przetwornica impulsowa zbudowana na układzie MAX5035, ale ze względu na zastosowanie regulatora 3F, który posiada wbudowany układ BEC nie jest ona wykorzystywana podczas jazdy, część cyfrowa jest wtedy zasilana bezpośrednio z regulatora 3F. Programy Programy na mikrokontrolery użyte w obu modułach napisane są w języku C. W mostkach sterujących silnikami DC działa algorytm PID, zaś w jednostce kontrolującej linię algorytm PD. Zasilanie Do zasilania robota stasowane są zamiennie akumulatory Turnigy nano-tech 850mAh 3S 25~40C lub 350mAh 3S 65~130C Lipo Pack. Osiągnięcia :arrow:1. miejsce – Robotic Tournament 2012 w Rybniku – Linefollower :arrow:3. miejsce – Trójmiejski Turniej Robotów 2012 w Gdańsku – Linefollower :arrow:3. miejsce – Trójmiejski Turniej Robotów 2012 w Gdańsku – Linefollower PRO :arrow:2. miejsce – Festiwal Robotyki CybAirBot 2012 w Poznaniu - Linefollower :arrow:1. miejsce – Roboxy 2012 w Gdańsku - Linefollower :arrow:1. miejsce – Robocomp 2012 w Krakowie – Linefollower :arrow:2. miejsce – Robocomp 2012 w Krakowie – Linefollower Enhanced :arrow:1. miejsce – ASTOR Robot Challenge 2012 w Sosnowcu – Linefollower :arrow:1. miejsce – ASTOR Robot Challenge 2012 w Sosnowcu – Linefollower Enhanced :arrow:1. miejsce – Sumo Challenge 2012 w Łodzi – Linefollower :arrow:3. miejsce –Robotic Arena 2012 we Wrocławiu – Linefollower Filmy z testów i zawodów Nowy film z ostatnich zawodów!
  6. JarekK

    Wycinanie CNC polietylen

    Cześć! Ja dysponuje obrabiarką CNC, podeślij rysunki na jarekkorus@gmail.com , zobaczymy co da się zrobić 🙂 Pozdrawiam, Jarek.
  7. Kiedyś zostanie opisany, na razie mamy na to za mało czasu. Mi zawody również się podobały, fajna atmosfera, plus również dla organizatorów za liczenie się z uwagami zawodników. Poniżej są dwa filmy, jeden z naszym robotem, a drugi z walkami finałowymi w minisumo. Pozdrawiam, Jarek.
  8. Masz racje, dość mocno go spowalniają. Jak widać przejazd przez kąty proste jest naszym najsłabszym punktem. Na pierwszych testach w akademiku był kąt prosty, przed którym było około 0,5m prostej. Wtedy trasa była starannie wyczyszczona i przejazd przez ten kąt nie stanowił dużego problemu wykorzystując standardowy regulator. Wtedy prędkość robota oscylowała w granicach 1,3 – 1,4 m/s. Na pierwszych zawodach w Sosnowcu trasa była dużo większa niż ta, na której testowaliśmy robota, kąty proste występowały po dłuższych odcinkach, przed którymi robot był już rozpędzony. Jeśli dołożymy do tego niewielkie zabrudzenie trasy, wszystkie nasze „szybkie” nastawy są bezużyteczne, bo wypadamy na każdym kącie prostym. W takim wypadku musieliśmy wrócić do prędkości około 1 m/s, aby w ogóle przejechać trasę. Stąd wziął się pomysł na hamowanie przed kątami prostymi. Zminimalizowaliśmy wtedy szansę wypadnięcia, a ogólna prędkość nie była najgorsza. Dopiero na zawodach we Wrocławiu jak zobaczyliśmy tą piłę to wiedzieliśmy, że to będzie dla nas problem. Początkowo próbowaliśmy jeździć bez wykrywania kątów prostych na tej pile, nie było źle, bo przejeżdżaliśmy cała trasę, ale ostatecznie udało nam się to jednak włączyć i tak ustawić, aby sam przejazd był jak najszybszy. Sposób ten nadal nie jest dopracowany i jak widać różnie reaguje, będziemy nad tym bądź innym algorytmem jeszcze pracować. Na czystej trasie podczas testów działało to dobrze, na zawodach już nie, dlatego szukaliśmy na szybko jakiegoś innego rozwiązania. Na zawodach robot po prostu wpadał w poślizg i nie dawał rady wrócić na linię. Widać to na filmie z Sosnowca, wtedy nie mięliśmy jeszcze hamowania przed kątami prostymi, przy odrobinie większej prędkości ogólnej tracił kontakt z linią właśnie na tych kątach. Trzeba również wspomnieć, że nasz robot nie był zaprojektowany z myślą o wygrywaniu czy jak najmniejszej masie lub bezwładności. Chcieliśmy przetestować różne rozwiązania, np. rozmieszczenie czujników, czy lekkie przeciążenie silników, dlatego też nie posiada turbiny. Jego cel to dostarczenie nam doświadczeń w budowie i sterowaniu takim robotem, a w tym sprawdza się znakomicie 🙂
  9. Witam wszystkich w nowym roku! Widzę, że kolega Flesiu odsypia jeszcze noc sylwestrową 🙂 więc jako częściowy współtwórca tego robota postaram się odpowiedzieć na Wasze pytania. Wraz ze wzorem ścieżek został wydrukowany kontur, jaki maja mieć płytki, następnie ostrym nożem nacięliśmy laminat i wyłamaliśmy niepotrzebne fragmenty. Otwór wewnątrz płytki najpierw został nawiercony wokół konturu duża ilością otworów o średnicy 3mm i wyłamany. Na koniec płytka została wykończona papierem ściernym, który obracał się na walcu z wykorzystaniem malej wysokoobrotowej wiertarki 12V. Wszystko robione w rekach „do konturu”. Nie dysponowaliśmy innym sprzętem ze względu na wykonanie płytki w akademiku 🙂 Ad1. Silniki są sterowane max PWM, fakt, napięcie sterujące nimi jest troszkę za duże. Początkowo chcieliśmy zrobić sprzężenie od napięcia akumulatora, aby nie przekraczać 9V wykorzystując pomiar napięcia aku, który jest na płytce i w programie. Ostatecznie zrezygnowaliśmy z tego, ponieważ napięcie na akumulatorze szybko spada z 12,6V do powiedzmy 11 – 11,6 co nie jest już tak zabójcze dla silników. Ad2. Była to pierwsza poważna płytka, jaką projektował mój kolega, zdecydowaliśmy, że na początku wszystko będzie tht. Ad3. Sharp ma swoja osobna płytkę montowana do robota na gnieździe goldpinów, podczas normalnej jazdy jest zdejmowany, prawdę mówiąc nie używaliśmy go jeszcze do wykrywania przeszkód. Ad4. Aku jest duże tylko z tego względu żeby nie trzeba go było często ładować podczas testów. Czujniki rozmieszczone są niesymetrycznie, tzn. bliżej środka maja niewielkie odstępy od siebie, a im dalej tym one są większe. Ponadto w programie każdy czujnik ma swoja wagę i to na jej podstawie obliczany jest uchyb. W trakcie testów wyszło, że to rozwiązanie nie przynosi dobrych efektów, lepiej było by rozmieścić je równomiernie. To, że jest ich 11 wyszło podczas projektowania płytki, jak się też później okazało jest ich trochę za mało a krańcowe są za wąsko rozstawione. Testowaliśmy również inne odległości czujników od osi, ale nie przynosiły one znacznej poprawy, poza tym trzeba by do każdego ustawienia odpowiednio dobierać nastawy PID, na co nie mięliśmy zbytnio czasu i ostatecznie jeździmy na takim ustawieniu jak jest na zdjęciu. Rozstaw nie jest raczej za mały, to na zdjęciach może tak wyglądać, w rzeczywistości wydaje się odpowiedni 🙂 Obsługa katów prostych polega u nas na wykryciu go i wyhamowaniu robota, po kilkudziesięciu milisekundach sterowanie wraca do PID i sam obrót to już efekt pracy regulatora. Zrobiliśmy tak ze względu na to ze nasz robot ma dużą bezwładność i jak za szybko najedziemy na kat prosty to lubi z niego wypaść, bądź zawrócić, dlatego woleliśmy ustawiać go na większą prędkości i hamować go jedynie na kątach prostych. Człon całkujący pomaga nam trochę na trasach wykonanych z łuków, robot lepiej „trzyma linię”, choć samo znaczenie członu całkującego można i tak uznać za pomijalne. Pozdrawiam, Jarek.
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.