EROBOT -ROBOT DO WALK SUMO


EROBOT -ROBOT DO WALK SUMO

Ten mały robocik mobilny powstał na zawody sumo robotów odbywające się w Poznaniu w 2005 roku (zajął wtedy 3. miejsce). Jego budowa jest względnie prosta – z racji ograniczonej masy (3 kg) i rozmiarów (20 x 20 cm w podstawie) zawiera tylko to, co niezbędne.

O SUMO

W klasie japońskiej (w której startowałem), ring jest czarnym kołem o średnicy 154 cm, na krawędzi znajduje się kilkucentymetrowa biała linia a na środku ringu znajdują się linie startowe (oddalone od siebie o 20 cm i szerokie również na 20 cm). Roboty mogą mieć w podstawie przed startem nie więcej, niż 20 x 20 cm, dowolną wysokość i masę nie przekraczającą 3 kg. Walka polega na próbie zepchnięcia przeciwnika z ringu. Jeden mecz składa się z 3 pojedynków. Niedozwolone są działania mające na celu uszkodzenie przeciwnika lub ringu. I najważniejsze – roboty mają być autonomiczne, czyli działać bez pomocy człowieka.

KONSTRUKCJA JEZDNA

EROBOT składa się z aluminiowej podstawy i karoserii, 4 silników prądu stałego z przekładniami o napięciu zasilania 12 V i prędkości nominalnej 150 obr/min (rysunek 2) połączonych za pomocą stalowych piast z kołami z tworzywa sztucznego (z gumowymi nakładkami zwiększającymi przyczepność – rysunek 3). Nie ma tutaj dodatkowego suportu dla kół – obciążenie jest przenoszone bezpośrednio na wał silnika. Nie jest to najlepsze rozwiązanie, zwłaszcza że jakość łożyskowania wału wyjściowego silnika pozostawia sporo do życzenia – jednak na takie właśnie silniki byliśmy skazani – jako jedyne były wystarczająco małe, aby zmieścić się na podwoziu. Przy tego rodzaju sposobie przeniesienia napędu pewnym problemem jest ustawienie geometrii kół – w konstrukcjach trójkołowych nie ma z tym problemu, jednak u nas okazało się, że robocik nie wspiera się równomiernie na wszystkich 4 kołach.

ZASILANIE

Zasilanie zapewnia żelowy akumulator ołowiowy o napięciu 12V i pojemności 1.2 Ah. Zaletami takiego akumulatora jest przede wszystkim niska cena i spory prąd rozładowania. Wady to duża masa (ołowiane elektrody) i mała gęstość mocy (czyli stosunek ilości gromadzonej energii do objętości akumulatora). Pod tym względem lepsze są akumulatory NiCD lub NiMh. Są one jednak dużo droższe i wymagają odpowiedniego algorytmu ładowania. Bezpośrednio z akumulatora zasilane są jedynie silniki. Wszystkie inne elementy robota zasilane są z dwustopniowego regulatora napięcia złożonego z przetwornicy obniżającej napięcie 12 V do wartości około 8 V i liniowego regulatora dającego na wyjściu 5 V (typu 7805) potrzebne do układów cyfrowych i czujników. Ten prosty system zasilania sprawdza się w naszej konstrukcji, jednak warto wspomnieć że roboty mobilne mają zazwyczaj mocno rozbudowane systemy zasilania które często wykorzystują dwa odrębne obwody do zasilania elementów mocy (silniki, oświetlenie itp.) i elektroniki sterującej (mikrokontroler, kamery, czujniki).

CZUJNIKI

Do wyszukiwania przeciwnika na ringu służą 3 sonary (dwa z przodu, jeden z tyłu robocika – rysunek 4) o zasięgu 1.5 m i rozdzielczości około 2 mm. Konstrukcja sonaru jest dość prosta. Składa się on z generatora fali ultradźwiękowej opartego o konwerter poziomów MAX232 i toru odbiorczego w skład którego wchodzi dwustopniowy wzmacniacz sygnału (zbudowany na LM1458), komparator (LM311) i układ automatycznej regulacji czułości. Podstawową zaletą tego rodzaju czujników jest fakt, że jego wskazania są niezależne od koloru, faktury i stopnia przezroczystości przeszkody. Problemy te występują w znakomitej większości czujników optycznych. Wadą tego rozwiązania jest ograniczona szybkość działania. Na ograniczenie to składają się dwa czynniki: czas potrzebny na przelot fali dźwiękowej w powietrzu oraz potrzeba odczekania na zaniknięcie fal odbitych.
Następnym typem czujników zastosowanym w naszej konstrukcji są podczerwone czujniki zbliżeniowe. W przeciwieństwie do sonarów, które mogą mierzyć odległość do przeszkody, czujniki podczerwone dają sygnał zero – jedynkowy. Ich zasięg wynika bezpośrednio z mocy diód podczerwonych oświetlających przeszkodę. W naszej konstrukcji udało się osiągnąć zasięg około 15 cm. Elementem odbiorczym jest scalony odbiornik z demodulatorem fali nośnej 36 kHz: TSOP1736 stosowany w sprzęcie RTV jako odbiornik zdalnego sterowania – rysunek 5. Zaletą stosowania odbiornika z demodulatorem jest odporność na działanie światła słonecznego i innych źródeł promieniowania podczerwonego.
Ostatnim typem czujników użytych w robocie są 4 podczerwone czujniki refleksyjne QRD1114 służące do wykrywania linii. Podobnie jak czujniki zbliżeniowe, czujniki linii również mają wyjścia logiczne. Czujnik zawiera w jednej obudowie podczerwoną diodę świecącą oraz fototranzystor reagujący na światło podczerwone. Rozwiązanie takie nie jest odporne na zakłócenia (tak jak wspomniany wcześniej odbiornik TSOP1736) lecz nie stanowi to większego problemu, ponieważ czujniki są zamontowane na małej wysokości nad podłożem i skierowane w dół. Dzięki zastosowaniu modulowanej szerokości impulsów prądu zasilającego diody nadawcze, można regulować próg zadziałania czujnika (kolor podłoża, przy którym wyjście czujnika zostanie uaktywnione).

PŁYTA STERUJĄCA

Komputer pokładowy został oparty o mikrokontroler Atmega128 firmy Atmel (rysunek 6). Oprócz mikrokontrolera na płycie znalazły się: sterownik silnika krokowego (A3967), zestaw 4 kluczy tranzystorowych (2 bipolarne, 2 polowe) do sterowania urządzeniami zewnętrznymi – w naszym przypadku było to sterowanie diód w czujnikach podczerwonych, opisany wcześniej dwustopniowy zasilacz oraz spora liczba pomniejszych elementów dyskretnych i złączy. Oczywiście nie można zapomnieć o wysokiej jakości mostkach zasilających silniki – IR3220. Pomimo niewielkich rozmiarów (obudowa SOIC 20) elementy te po dodaniu dwóch tranzystorów MOS-FET tworzą kompletny mostek o maksymalnym prądzie równym 7 A (przy napięciu pracy dochodzącym do 35 V). Na uznanie zasługuje również możliwość włączenia hamowania prądem (przez zwarcie wirnika) i zabezpieczenie zarówno na wypadek zwarcia – prąd zadziałania około 30 A – jak i przegrzania.

PROGRAMOWANIE

Sprzęt to nie wszystko. Aby robot mógł wykonywać swoje zadania, niezbędne jest oprogramowanie mikrokontrolera. Zostało ono napisane w języku C (WinAVR, korzystający z bezpłatnego kompilatora AVR – GCC). Wybrałem ten język z powodu dużej elastyczności, łatwej modularyzacji programu i porównywalną z asemblerem jakością i rozmiarem kodu wynikowego. Warto wspomnieć, że procesory z rodziny AVR mogą być programowane w systemie za pomocą łącza SPI. Dzięki temu można w kilka sekund poprawić program, skompilować i przesłać go do mikrokontrolera bez rozbierania robota – wystarczy podłączyć kabel programatora.
Oprogramowanie nie było pisane "od zera". Zastosowałem w nim kilka modułów, które zostały stworzone wcześniej – między innymi komunikacja z komputerem PC, obsługa sonarów i kilka innych. Z doświadczenia wiem, że to właśnie brak czasu na dopracowanie kodu, spowodował że drużyny z dobrymi konstrukcjami osiągały kiepskie wyniki. Zachęcam do pisania programu nawet wtedy, kiedy nie ma jeszcze robota – czasami do testowania wystarczy płytka uniwersalna i procesor. Nasza sytuacja była pod tym względem o tyle dobra, że niedługo przed zawodami sumo zajmowaliśmy się konstruowaniem innego robota mobilnego i mogliśmy wykorzystać zdobyte tak doświadczenie.

MOŻLIWOŚCI

Program robota umożliwia komunikację z komputerem PC za pomocą łącza RS-232 ułatwiającą testowanie programu i dobór parametrów takich jak zasięg sonarów, czułość czujników linii, prędkość robota, promień jego skrętu i wiele innych. Dodatkowo, dzięki zastosowaniu programowych timerów, uzyskana została namiastka wielozadaniowości – robot potrafi wykonywać jakiś zaprogramowany manewr, a jednocześnie reagować na zmiany odczytów czujników. Algorytm sterowania robotem jest dość prosty i składa się w głównej mierze z reakcji na wybrane stany czujników. Mimo to, udało się w nim osiągnąć zdolność śledzenia przeciwnika, wykonywanie uników przy zbyt długim zwarciu i kilka innych, przydatnych umiejętności. Na koniec dodam, że pamięć programu w mikrokontrolerze była zajęta w zaledwie kilku procentach, więc śmiało można myśleć o rozbudowywaniu programu o nowe funkcje.

Rysunek 1 – schemat
Rysunek 2 – model
Rysunek 3 – silnik wraz z podporą
Rysunek 4 – koło z piastą
Rysunek 5 – sonar
Rysunek 6 – czujnik zbliżeniowy
Rysunek 7 – moduł sterujący
Rysunek 8 – wiercenie otworów pod sonary
Rysunek 9 – walki sumo

autor: Łukasz Matecki; zdjęcia: Marek Kraft, Łukasz Matecki
kontakt: lutecki@op.pl
www: http://www.lutecki.republika.pl/sumo.htm

Źródło: http://www.lutecki.republika.pl/sumo.htm

Zobacz też:


Roboty coraz bliżej ludzi dzięki mięśniom inspirowanym naturą
ModuBot – elastyczna robotyka modułowa od MultiProjekt
Największe Targi Automatyki Przemysłowej i Robotyki w Polsce!
Czy roboty przewyższają koszty zatrudnienia?
Dlaczego pasta lutownicza często sprawia problemy techniczne?
Grupa RENEX na stoisku Yamaha podczas targów MOTEK 2024
Sztuczne oko zrewolucjonizuje widzenie robotów
Stwórz przedsiębiorstwo przyszłości z naszym audytem technologicznym – wywiad z MultiProjekt Automatyka