Skocz do zawartości

MicroMouse "Apollo"


wn2001

Pomocna odpowiedź

"Apollo" to projekt robota MicroMouse z roku 2017 o wymiarach 110 x 120 x 140 mm. Był drugim podejściem do tematu po pierwszym moim robocie tej klasy, InfraRed Co ważne, InfraRed podążał zasadą prawej (lub lewej) ręki, która mówi, że jeżeli środkowy kwadrat będący celem robota jest połączony z brzegiem labiryntu, to na 100% cel zostanie osiągnięty, jeżeli "mysz" będzie jechać ciągle przy prawej (lub lewej) ścianie - jest to tzw. WallFollower. Mówiąc inaczej, robot nie zna swojego położenia w labiryncie, jedzie "na oślep". W tej konstrukcji chciałem, aby robot "znał" swoje położenie w labiryncie i pokonał je może nie w błyskawicznym tempie 🙂, ale nieco inteligentniej. Zdecydowałem się na algorytm odcinania ślepych zaułków. Poniżej film z krótkiego testu:

 

Konstrukcja

Robot przypomina wieżę w formie "kanapki", z trzema poziomami z drukarki 3D (każdy o grubości 5mm):

  • pierwszy - zawiera dwa silniki krokowe NEMA11, na osie których gumowe koła wbijałem "na gorąco" (rozwiercone na średnicę 4,8mm i wykąpane w wodzie 80°C bez problemu weszły na osie silników o średnicy 5mm - kiedy całość ostygła, połączenie jest bardzo pewne), cztery czujniki dioda IR + fototranzystor i 2 punkty podparcia (dioda LED wklejona na żywicę);
  • drugi - 2x pakiet LiPol 2S 900 mAh, połączone szeregowo, co nominalnie daje 14,4V - im wyższe napięcie, tym prąd w cewkach uzwojeń silników krokowych narasta szybciej, co pozwala na osiąganie większych prędkości obrotowych (w moim przypadku maksymalnie kilka obrotów na sekundę);
  • trzeci - zawiera kolejną "kanapkę", dwóch płytek uniwersalnych z elektroniką 🙂

Elektronika

Czujniki to klasyczne rozwiązanie, do każdej z diod i fototranzystorów przylutowany jest za pomocą takich, rozciętych na pół, przewodów i podłączonych do płytek za pomocą męskich goldpinów. Rezystory znajdują się już na płytce. Ponadto na dolnej płytce znajdują się dwa złącza T-DEAN do podłączenia akumulatorów, stabilizator 5V LM7805 oraz Arduino Nano. Odczytuje ono napięcia z fototranzystorów, linearyzuje odczyty z dokładnością do 0,5cm i na podstawie wykonanych wcześniej charakterystyk i instrukcji switch...case. Następnie przesyła je przez I2C do Arduino Nano na górnej płytce. Zastosowanie dwóch Nano wynikało z obawy przed niewystarczającą mocą obliczeniową jednego, ale jak się potem okazało, było ono zbyteczne. Natomiast wysterowaniem silników krokowych i tworzeniem mapy labiryntu zajmuje się Arduino na górze. Ponadto znajdują się tam 3 diody LED, bardzo przydatne przy testach. Sterowniki silników krokowych to A4988.

Algorytm

https://forbot.pl/blog/roboty-micromouse-5-metod-przeszukiwania-labiryntu-id17354

Polecam powyższy artykuł, okazał się bardzo przydatny. Algorytm odcinania ślepych zaułków to udoskonalona metoda podążania za ścianą. Robot w pierwszym przejeździe tworzy mapę i jeżeli zawrócił, to w komórce, w której pojawił się dwukrotnie stawia wirtualną ścianę. Następnie w drugim przejeździe jedzie z pamięci 🙂

Kilka zdjęć

DSC02930.thumb.JPG.64e989145c0ed476c4abed623fd0efbe.JPGDSC02933.thumb.JPG.ad56fa622a328a5461872cf265e8f263.JPG

DSC02932.thumb.JPG.850f699f03f588a92a175f2e29ad9f6e.JPGDSC02935.thumb.JPG.50404fc3685c20a9bcaa9a07fd3f3534.JPGDSC02936.thumb.JPG.ef9bdbc925678fe384d436a34b076118.JPGDSC02934.thumb.JPG.e8d44755822c14d4c842dc5d4babf26f.JPG

Osiągnięcia

Robot brał udział w konkurencji MicroMouse podczas XIV Festiwalu Robotyki CyberBot w Poznaniu w roku 2017, gdzie zajął VI miejsce. Warto zaznaczyć, że robotów startowało 6 🤣 Liczy się jednak fakt, że robot przejechał labirynt, ukończył przejazd i znalazł najkrótszą ścieżkę. Podstawowym czynnikiem ograniczającym prędkość jest konieczność zatrzymywania się co komórkę, niestety tak rozwiązałem algorytm sterowania silnika, wykorzystałem znaną i lubianą bibliotekę AccelStepper()

Chętnie odpowiem na wszelkie pytania jeżeli takowe się pojawią, pozdrawiam 🙂

  • Lubię! 2
Link do komentarza
Share on other sites

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

Właśnie zaakceptowałem Twój opis, możesz go teraz zgłosić do akcji rabatowej umieszczając link w temacie zbiorczym. Dziękuję za przedstawienie ciekawego projektu, zachęcam do prezentowania kolejnych DIY oraz aktywności na naszym forum 🙂

  • Lubię! 1
Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.