CategoryMicromouse

Przyszły płytki do robota

Dawno nie było nic o postępach prac nad robotem. Pora to zmienić. Tym bardziej, że ostatnio odebrałem gotowe płytki PCB.

Zamówiłem trzy płytki z czarną soldermaską. Za czarny kolor trzeba było dopłacić, ale moim zdaniem było warto, bo dzięki temu robot będzie się lepiej prezentować. Gotowe płytki wyglądają tak:

Czytaj dalej

Projekt płytki drukowanej

Po zrobieniu schematu ideowego przyszła pora na projekt płytki PCB. Udało mi się uwinąć z tym zadaniem w weekend. W tym poście opiszę, czym się kierowałem przy projekcie PCB.

Wymiary robota

Pierwszym krokiem do stworzenia PCB było określenie wymiarów. Byłem tutaj ograniczony przez program Eagle, który wykorzystałem do zrobienia projektu. Maksymalny rozmiar płytki możliwy w darmowej wersji programu to 80x100mm. Minimalna szerokość musiała być taka, aby zmieściły się dwa mocowania silników – długość jednego to 23mm, a szerokość to 40mm. Szerokość z zamontowanymi kołami to 50mm. Ostatecznie zdecydowałem, że pomiędzy silnikami umieszczę jeszcze baterię i szerokość wyniesie 60mm. Przed mocowaniami silników po zostawieniu miejsca na koła zdecydowałem się na zwiększenie szerokości do 80mm i wyprofilowanie kształtu półkola. Wzorowałem się tutaj na istniejących robotach. Takie rozwiązanie jest standardem, a przykłady można obejrzeć tu(należy wybrać Projects->Micromouse), tu i tu. Jak bym chciał być pro, to mogłem jeszcze tam wyciąć ze środka część PCB dla odchudzenia konstrukcji. Jednak nie byłem pewny, czy się ze wszystkim zmieszczę, a dopóki nie będę chciał rywalizować z najlepszymi Micromouse na zawodach w Japonii raczej nie będę musiał dbać o każdy gram. Ostateczny kształt płytki można obejrzeć na rysunku. Obraz jest mocno zaciemniony przez żółte linie reprezentujące niedokończone połączenia, których oczywiście zapomniałem wyłączyć do screena. Jednak obrys robota i rozmieszczenie najważniejszych elementów są widoczne.

Czytaj dalej

Schemat ideowy robota

Prace nad robotem ruszyły. Dodałem pierwsze commity na GitHuba, wybrałem licencję dla projektu (tym aspektem zainteresowałem się dzięki Slackowi konkursowemu, normalnie bym olał ten temat), dodałem krótkie readme, a przede wszystkim zrobiłem schemat ideowy robota. W tym wpisie opiszę wykonany schemat.

Do wykonaniu schematu użyłem programu Cadsoft Eagle 7.2, czyli starszej wersji programu wydanej jeszcze zanim Eagle został kupiony przez Autodesk. Początkowo chciałem wypróbować nową wersję, ale stwierdziłem, że płytki projektuję raz na kiedyś, w tej wersji mam wszystko czego potrzebuję łącznie z customowymi bibliotekami elementów i poznawanie nowej wersji będzie startą czasu. Zamiast tego wolę skupić się na narzędziach programistycznych. Cały schemat prezentuje się następująco:

W kolejnych rozdziałach omówię poszczególne moduły.

Czytaj dalej

Micromouse – koncepcja

W poprzednim wpisie tylko ogólnie napisałem o projekcie. Teraz przyszła pora na więcej szczegółów technicznych. Opiszę więc na czym polegają zawody Micromouse, sformułuję wymagania i przedstawię koncepcję robota.

Opis konkurencji Micromouse

Micromouse to jedna z konkurencji odbywających się podczas zawodów robotów. Jej celem jest jak najszybsze przejechanie robota z rogu labiryntu do mety znajdującej się najczęściej w środku labiryntu. Każdy ze startujących robotów ma określony czas, jaki może spędzić w labiryncie. Robot zaczyna od przejazdu eksploracyjnego podczas którego poznaje ułożenie ścian. Następnie wraca na start i rozpoczyna speed run, czyli jak najszybszy przejazd od startu do mety. Jeśli czas na to pozwala, robot może wykonać więcej niż jeden speed run. Podczas przejazdu możliwa jest interwencja zawodnika np. jeżeli robot się zablokuje. W takim wypadku dodawana jest kara czasowa do wyniku przejazdu. Końcowy wynik to najczęściej czas najszybszego przejazdu + kary. Na niektórych zawodach dodawany jest również całkowity czas spędzony w labiryncie podzielony przez jakiś przelicznik.

Czytaj dalej

Mocowania do silników z drukarki 3D

Ostatnio po ciężkiej przeprawie dotarły do mnie dwie przesyłki. Pierwsza z nich zawierała obejmy do silników i felgi zrobione na drukarce 3D, a druga śrubki do montażu tych części. Obie przesyłki zostały nadane na początku grudnia, a dotarły do mnie na początku lutego. Poczta Polska jak zwykle się spisała. No ale skoro części w końcu przyszły, mogłem zająć się składaniem mocowań silników i kół do nowego Micromouse.

Czytaj dalej

Micromouse – podejście drugie

W poprzednim wpisie opisałem swoje zmagania z robotem Micromouse z zamierzchłych czasów. Dzisiaj opiszę drugą próbę, którą podjąłem w zeszłym roku. Od poprzednio opisywanego projektu minęły 3 lata. Przez ten czas nabrałem świadomości swoich słabości, z których za największą uznałem posługiwanie się lutownicą. Poza tym z dystansem podchodziłem do swoich umiejętności w dziedzinach elektroniki i mechaniki. W przeciwieństwie do poprzedniego podejścia, tym razem fundusze nie były takim problemem. Na projekt jednak mogłem przeznaczyć dużo mniej czasu niż poprzednio. Dodatkowo miała to być okazja na sprawdzenie w praktyce dobrych praktyk i narzędzi do prowadzenia projektu. Dlatego miałem projekt założony na GitLabie z gitem, issue trackerem, wiki i milestonami. Poza tym do kodu miałem pisać unit testy, a nawet próbowałem okiełznać gitlabowe continuous integration. Ktoś może powiedzieć, że to przerost formy nad treścią, ale te umiejętności już niedługo miały mi się przydać w pracy, a ten projekt był dobrym poligonem doświadczalnym.

Czytaj dalej

Micromouse – podejście pierwsze

Dawno temu postanowiłem sobie, że zrobię robota micromouse z prawdziwego zdarzenia. Nie interesowało mnie samo wykonanie konstrukcji, która jest w stanie przejechać labirynt. Chociaż realizacja tego zadania jest sama w sobie osiągnięciem. Mój robot miał być szybki i wykorzystywać złożone algorytmy np. filtr Kalmana do pozycjonowania. Do tej pory wszystkie próby kończyły się porażkami. Mam już w głowie koncepcję na kolejne podejście. Pomyślałem jednak, że zanim opiszę tu nowe założenia projektu i kroki jakie już poczyniłem, najpierw napiszę coś o poprzednich próbach. Dlatego dzisiejszy wpis będzie o moim pierwszym podejściu do stworzenia robota micromouse.

Było to na studiach, zaraz po zrobieniu inżynierki. Miałem wtedy ułańską fantazję i nieograniczoną wiarę w swoje możliwości. W skutek czego postanowiłem między innymi, że użyję modułu żyroskopu i akcelerometru LSM320DL w obudowie LGA, którego samodzielnie polutuję lutownicą grzałkową. Footprint żyroskopu sam zrobię w Eaglu i specjalnie zrobię dłuższe pady, żeby je podgrzać i stopić cynę umieszczoną wcześniej na pinach układu. Oczywiście wcześniej miałem niewielkie doświadczenie z lutowaniem, głównie układów przewlekanych i nawet nie zrobiłem wcześniej żadnej przymiarki, żeby zobaczyć, czy to jest w ogóle wykonalne.

Czytaj dalej

© 2017 ucgosu.pl

Theme by Anders NorénUp ↑