Robotyka i druk 3D

Robot sumo – zasady działania, budowa i strategie walki

Spis treści
Robot sumo – zasady działania, budowa i strategie walki

Roboty sumo to autonomiczne roboty mobilne, które rywalizują na okrągłym ringu, próbując wypchnąć przeciwnika poza jego krawędź. Ten widowiskowy format zawodów łączy mechanikę, elektronikę i programowanie, dlatego cieszy się dużą popularnością wśród hobbystów, uczniów oraz studentów kierunków technicznych.

Czym są roboty sumo?

Robot sumo to niewielki pojazd sterowany przez mikrokontroler. Samodzielnie wykrywa przeciwnika i krawędź ringu, a następnie realizuje zaprogramowaną strategię walki. Podczas pojedynku robot nie jest sterowany radiowo ani przewodowo – operator uruchamia jedynie procedurę startową, po czym maszyna działa autonomicznie.

Jedną z najpopularniejszych kategorii jest standardowa klasa sumo, nazywana także klasą japońską. Walka odbywa się na czarnym ringu o średnicy 154 cm, otoczonym białą linią brzegową. Robot nie może przekraczać wymiarów 20 × 20 cm ani masy 3 kg, natomiast jego wysokość zwykle nie jest ograniczona.

Istnieją również mniejsze klasy, takie jak MiniSumo i NanoSumo. Zasada rywalizacji pozostaje podobna, ale zmieniają się wymiary ringu oraz dopuszczalne gabaryty i masa robota. Szczegółowe wymagania zawsze należy sprawdzić w regulaminie konkretnych zawodów.

Zasady zawodów robotów sumo

Ring i jego oznaczenia

Ring do zawodów sumo, nazywany dohyo, ma kształt koła. Zwykle wykonuje się go z płyty pokrytej materiałem zapewniającym odpowiednią przyczepność kół.

Typowe parametry ringu w standardowej klasie sumo obejmują:

  • Średnica – 154 cm;
  • Powierzchnia – czarna i zapewniająca stosunkowo wysoki współczynnik tarcia;
  • Krawędź – biała linia o szerokości około 5 cm, wyznaczająca koniec pola walki;
  • Linie startowe – dwie równoległe linie shikiri o wymiarach 20 × 2 cm, za którymi ustawia się roboty przed rozpoczęciem pojedynku.

W promieniu około 1 m od ringu powinna pozostać wolna przestrzeń. Ogranicza to ryzyko, że czujniki robota pomylą widzów, wyposażenie stanowiska lub inne obiekty z przeciwnikiem.

Przebieg walki

Standardowy mecz robotów sumo przebiega w kilku etapach:

  1. roboty zostają ustawione za liniami shikiri;
  2. sędzia wydaje komendę startu, po której maszyny odczekują czas określony w regulaminie, często około 5 sekund;
  3. rozpoczyna się runda, trwająca zazwyczaj około 1 minuty;
  4. każdy robot próbuje wypchnąć przeciwnika poza białą linię;
  5. mecz składa się najczęściej z trzech rund, a zwycięża robot, który jako pierwszy wygra dwie z nich.

Robot, który samodzielnie zjedzie z ringu, zwykle przegrywa rundę. Jeśli w wyznaczonym czasie nie nastąpi rozstrzygnięcie, na przykład z powodu zakleszczenia maszyn lub braku kontaktu, sędzia może przerwać rundę i zarządzić jej powtórzenie. Dokładne zasady zależą od regulaminu zawodów.

Zasady fair play

Regulaminy zabraniają celowego uszkadzania przeciwnika i infrastruktury zawodów. Niedozwolone są między innymi:

  • elementy tnące, przebijające lub zaprojektowane do niszczenia konstrukcji przeciwnika;
  • urządzenia zakłócające działanie elektroniki, czujników lub komunikacji innych robotów;
  • mechanizmy brudzące, przyklejające się do ringu albo uszkadzające jego powierzchnię.

Architektura robota sumo

Typowego robota sumo można podzielić na kilka współpracujących bloków funkcjonalnych:

  1. Układ jezdny i konstrukcja mechaniczna – podwozie, koła lub gąsienice, przekładnie, obudowa oraz klin;
  2. Układ wykrywania przeciwnika – czujniki odległości oraz logika określająca położenie celu;
  3. Układ wykrywania krawędzi – najczęściej refleksyjne czujniki optyczne rozpoznające białą linię;
  4. Mikrokontroler – jednostka wykonująca algorytm, analizująca sygnały z czujników i sterująca napędem;
  5. Układ zasilania – akumulator, przetwornice DC/DC, stabilizatory oraz zabezpieczenia;
  6. Interfejs użytkownika – przyciski, przełączniki, diody LED i opcjonalne połączenie z komputerem.

Podejście systemowe ułatwia projektowanie, testowanie i rozwijanie robota, ponieważ każdy blok można oddzielnie modyfikować, diagnozować i optymalizować.

Mechanika i układ jezdny

Napęd i konstrukcja nośna

W większości robotów stosuje się napęd różnicowy. Składa się on z dwóch niezależnie sterowanych kół napędowych umieszczonych po bokach oraz elementu stabilizującego, takiego jak ślizg, kulka podporowa lub dodatkowe koło.

Popularne rozwiązania napędowe to dwa silniki prądu stałego z przekładniami oraz koła z miękkimi oponami o wysokiej przyczepności. Alternatywą może być napęd gąsienicowy, spotykany między innymi w gotowych platformach typu Zumo.

Podwozie wykonuje się najczęściej z aluminium, stali lub sztywnego tworzywa sztucznego. Konstrukcja powinna być odporna na uderzenia, możliwie zwarta i wystarczająco lekka, aby pozostawić zapas masy na napęd, akumulator oraz dodatkowe obciążenie.

Maksymalizacja przyczepności i wykorzystanie masy

W zawodach sumo zwykle warto zbliżyć się do maksymalnej dopuszczalnej masy. Większy nacisk na podłoże może poprawić przyczepność i zwiększyć siłę, z jaką robot pcha przeciwnika.

Podczas projektowania należy zadbać przede wszystkim o zwartą konstrukcję bez niepotrzebnych pustych przestrzeni oraz odpowiednie rozmieszczenie ciężkich podzespołów. Środek ciężkości powinien znajdować się możliwie nisko i blisko osi kół, co ogranicza ryzyko utraty przyczepności lub przewrócenia maszyny.

Niska konstrukcja utrudnia przeciwnikowi wsunięcie klina pod podwozie i uniesienie kół napędowych.

Klin i kształt przedniej krawędzi

Jednym z najważniejszych elementów mechanicznych jest klin lub pług umieszczony z przodu robota.

Skuteczny klin powinien spełniać kilka warunków:

  • Mały prześwit – krawędź powinna znajdować się jak najbliżej podłoża, aby mogła wsunąć się pod przeciwnika;
  • Wysoka wytrzymałość – element powinien być wykonany z twardego i odpornego materiału, na przykład stali lub utwardzonego aluminium;
  • Odpowiednia geometria – kształt prosty, trapezowy lub lekko zaokrąglony należy dopasować do strategii walki.

Geometria klina, przyczepność kół i rozmieszczenie masy mają kluczowe znaczenie dla skuteczności ataku.

Elektronika – serce robota sumo

Układ zasilania

Typowy robot sumo wykorzystuje pakiet akumulatorów Li-Ion lub LiPo o napięciu dobranym do silników i elektroniki. W większych konstrukcjach często jest to około 7,4–12 V.

Poszczególne podzespoły mogą wymagać różnych napięć, dlatego układ zasilania zazwyczaj obejmuje osobną linię dla silników oraz stabilizowane napięcie dla mikrokontrolera i czujników. Można w tym celu zastosować przetwornicę DC/DC oraz stabilizator napięcia, na przykład 5 V lub 3,3 V.

Prawidłowo zaprojektowane zasilanie ogranicza spadki napięcia podczas rozruchu silników i zapobiega resetowaniu mikrokontrolera. Należy również uwzględnić straty mocy oraz nagrzewanie stabilizatorów, zwłaszcza liniowych.

Sterowanie silnikami – mostki H

Silniki prądu stałego są sterowane przez mostki H. Układy te umożliwiają zmianę kierunku obrotów oraz regulację prędkości za pomocą sygnału PWM.

W konstrukcjach edukacyjnych spotyka się między innymi moduły oparte na układach L298N i L9110. L298N jest rozwiązaniem popularnym, ale stosunkowo dużym i generującym zauważalne straty napięcia. W robotach nastawionych na wysoką sprawność lepiej sprawdzają się nowocześniejsze sterowniki tranzystorowe o małej rezystancji przewodzenia.

Mostek H musi wytrzymywać nie tylko nominalny prąd silnika, lecz także znacznie wyższy prąd rozruchowy i prąd zatrzymania.

Mikrokontroler

Podstawowa konstrukcja może wykorzystywać mikrokontroler z rodziny AVR, na przykład ATmega8, lub nowocześniejszy układ o podobnych możliwościach. Najważniejsze są odpowiednia liczba wejść i wyjść, kanały PWM, możliwość obsługi czujników oraz wystarczająca pamięć programu.

W bardziej rozbudowanych robotach można zastosować dwa mikrokontrolery. Jeden odpowiada wtedy za czujniki i komunikację, a drugi za sterowanie silnikami oraz wykonywanie głównej logiki programu. W większości prostych konstrukcji jeden właściwie dobrany mikrokontroler jest jednak wystarczający.

Czujniki krawędzi

Aby pozostać na ringu, robot musi niezawodnie wykrywać białą linię brzegową. Najczęściej stosuje się refleksyjne czujniki optyczne z diodą podczerwieni i fototranzystorem albo gotowe moduły do detekcji linii, takie jak QTR-1A.

Warto zastosować co najmniej dwa czujniki krawędzi umieszczone przy przednich narożnikach robota. W bardziej zaawansowanej konstrukcji dodatkowe sensory mogą znaleźć się także z tyłu i po bokach, aby zabezpieczać maszynę podczas cofania oraz manewrów obrotowych.

Czujniki przeciwnika

Do wykrywania przeciwnika można wykorzystać kilka rodzajów sensorów:

  • Binarne czujniki podczerwieni – informują o obecności obiektu w określonym zakresie odległości;
  • Analogowe czujniki odległości – pozwalają oszacować dystans do przeciwnika;
  • Czujniki ultradźwiękowe – mierzą odległość na podstawie czasu powrotu fali dźwiękowej;
  • Czujniki ToF – zapewniają szybki, cyfrowy pomiar odległości na podstawie czasu przelotu światła.

Czujniki mogą być zamontowane na stałe lub pracować w układzie skanującym. Kilka sensorów skierowanych pod różnymi kątami pozwala objąć większy obszar i dokładniej określić kierunek, z którego nadjeżdża przeciwnik.

Interfejs użytkownika i konfiguracja

Przed walką operator może skonfigurować najważniejsze parametry robota:

  • wybraną strategię, na przykład ofensywną lub defensywną;
  • czas opóźnienia startu wymagany przez regulamin;
  • maksymalną prędkość i dynamikę napędu;
  • czułość sensorów oraz czasy wykonywania manewrów.

Interfejs może mieć postać prostego panelu z przyciskami, przełącznikami i diodami LED albo połączenia z komputerem służącego do konfiguracji oraz diagnostyki.

Zasada działania – od czujników do strategii

Sekwencja startowa

Po ustawieniu robota na ringu i wydaniu komendy przez sędziego maszyna odczekuje czas wymagany przez regulamin, często około 5 sekund. Za precyzyjne odliczanie odpowiada mikrokontroler.

Po zakończeniu procedury startowej robot przechodzi do trybu poszukiwania przeciwnika i rozpoczyna ruch zgodnie z wybraną strategią.

Stan „szukaj przeciwnika”

Podczas poszukiwania robot może realizować różne wzorce ruchu:

  • jazdę po linii prostej połączoną z okresowym obrotem;
  • ruch po okręgu lub spirali;
  • naprzemienną jazdę do przodu i obrót o ustalony kąt;
  • krótkie manewry skanujące wykonywane w pobliżu środka ringu.

Mikrokontroler stale analizuje dane z czujników. Po wykryciu obiektu przechodzi do stanu „atak”.

Stan „atak”

Po wykryciu przeciwnika robot przyspiesza w jego kierunku i próbuje wsunąć klin pod jego konstrukcję. Silniki pracują wtedy z wysoką lub maksymalną mocą, a układ sterowania koryguje tor jazdy na podstawie wskazań sensorów.

Czujniki krawędzi muszą pozostać aktywne także podczas ataku. Wykrycie białej linii powinno mieć wyższy priorytet niż dalsze pchanie przeciwnika.

Detekcja krawędzi i stan „ucieczka od krawędzi”

Gdy czujnik wykryje białą linię, robot powinien natychmiast przerwać atak i wykonać sekwencję zabezpieczającą:

  1. zatrzymać lub szybko zmienić kierunek obrotów silników;
  2. cofnąć się w stronę środka ringu;
  3. obrócić się o ustalony kąt w kierunku wnętrza pola walki;
  4. wrócić do poszukiwania przeciwnika.

Odpowiednio dobrane prędkości, czas cofania i kąt obrotu minimalizują ryzyko samodzielnego opuszczenia ringu.

Obsługa zakleszczeń i sytuacji wyjątkowych

Logika sterująca może rozpoznawać zakleszczenie na podstawie długotrwałego braku zmian wskazań czujników, pomiaru prądu silników lub czasu spędzonego w stanie ataku. Po wykryciu takiej sytuacji robot może na krótko się cofnąć, obrócić, wykonać manewr boczny albo zmienić prędkość napędu.

Zachowania awaryjne ograniczają ryzyko utknięcia w martwym punkcie strategii, jednak muszą zachować zgodność z regulaminem zawodów.

Strategie walki robotów sumo

Podstawy skutecznej strategii

Skuteczność robota zależy od współdziałania kilku elementów:

  • odpowiedniego rozkładu masy i niskiego środka ciężkości;
  • wytrzymałego klina umieszczonego blisko podłoża;
  • właściwego doboru i rozmieszczenia czujników;
  • szybkiego napędu zapewniającego odpowiedni moment obrotowy;
  • algorytmu, który sprawnie reaguje na ruch przeciwnika i zbliżanie się do krawędzi.

Robot może działać ofensywnie lub defensywnie, choć większość konstrukcji dąży do szybkiego nawiązania kontaktu i wypchnięcia przeciwnika.

Strategia ofensywna „szarża”

Strategia ofensywna opiera się na szybkim przejęciu inicjatywy:

  • robot dynamicznie przeszukuje ring do momentu wykrycia przeciwnika;
  • po znalezieniu celu natychmiast przyspiesza;
  • koryguje kierunek, aby trafić w przeciwnika centralną częścią klina;
  • utrzymuje kontakt i pcha cel aż do krawędzi ringu.

W tej strategii szczególnie ważne są wysoka moc napędu, dobra przyczepność oraz szybka reakcja czujników krawędzi.

Strategia defensywno-ofensywna „czekaj i kontruj”

Robot może również przyjąć bardziej zachowawczą postawę:

  • po starcie wykonuje krótkie ruchy i obserwuje otoczenie;
  • ustawia się pod kątem ułatwiającym przechwycenie szarżującego przeciwnika;
  • po wykryciu celu wykonuje precyzyjny manewr ustawiający;
  • przechodzi do ataku i wykorzystuje maksymalną siłę napędu.

Strategia kontrująca wymaga precyzyjnych czujników, krótkiego czasu reakcji i powtarzalnego sterowania ruchem.

Strategia okrążania

Strategia okrążania polega na poruszaniu się po łuku w pobliżu środka ringu, ciągłym skanowaniu otoczenia i szybkim przechodzeniu do ataku po wykryciu celu. Może utrudnić przeciwnikowi wykonanie skutecznej szarży na wprost.

Przy rozbudowanym układzie sensorów skierowanych w kilku kierunkach strategia ta pozwala skutecznie przeszukiwać ring i atakować przeciwnika z mniej chronionej strony.

Optymalizacja algorytmów

Podczas rozwijania oprogramowania warto przestrzegać kilku zasad:

  • Ograniczenie liczby czujników – należy stosować tyle sensorów, ile rzeczywiście dostarcza użytecznych informacji;
  • Wysoka częstotliwość odczytu – szybkie próbkowanie skraca czas reakcji na przeciwnika i krawędź;
  • Priorytety zdarzeń – wykrycie białej linii powinno mieć pierwszeństwo przed kontynuowaniem ataku;
  • Spójna konfiguracja – wartości zapisane w kodzie muszą odpowiadać ustawieniom interfejsu użytkownika;
  • Powtarzalne testy – każdą zmianę należy sprawdzać w tych samych warunkach i porównywać wyniki.

Przykładowe komponenty i rozwiązania praktyczne

Prosty robot sumo może zostać zbudowany z następujących podzespołów:

  • Podwozie – gotowa platforma typu Zumo lub samodzielnie wykonana konstrukcja mieszcząca się w wymaganych wymiarach;
  • Napęd – dwa silniki DC z przekładniami oraz koła lub gąsienice o wysokiej przyczepności;
  • Sterownik silników – mostek H dobrany do napięcia i maksymalnego prądu napędu;
  • Mikrokontroler – ATmega8 albo inny układ zapewniający odpowiednią liczbę wejść, wyjść i kanałów PWM;
  • Czujniki krawędzi – od dwóch do czterech modułów refleksyjnych zamontowanych pod podwoziem;
  • Czujniki przeciwnika – sensory podczerwieni, ultradźwiękowe lub ToF skierowane w kilku kierunkach;
  • Zasilanie – pakiet akumulatorów, przetwornice napięcia, zabezpieczenie nadprądowe oraz główny wyłącznik.

Wykorzystanie gotowych modułów przyspiesza budowę i ułatwia diagnozowanie usterek. Pozwala także skupić się na dopracowaniu algorytmów sterowania, mechaniki i strategii walki.

Typowe błędy i dobre praktyki

Podczas projektowania i budowy robota sumo należy unikać najczęściej popełnianych błędów:

  1. Zbyt mała masa – niewykorzystanie dopuszczalnego limitu może ograniczyć przyczepność i zdolność pchania przeciwnika;
  2. Wysoki środek ciężkości – zwiększa ryzyko podniesienia kół, utraty stabilności lub przewrócenia robota;
  3. Nieprawidłowo dobrane napięcia – mogą powodować niestabilną pracę elektroniki albo uszkodzenie podzespołów;
  4. Zbyt słaby mostek H – niewystarczający zapas prądowy prowadzi do przegrzewania, spadku mocy lub wyłączenia sterownika;
  5. Brak filtracji zasilania – zakłócenia generowane przez silniki mogą resetować mikrokontroler i zaburzać odczyty czujników;
  6. Zbyt mało testów – robot może zachowywać się inaczej na powierzchniach o odmiennym kolorze, tarciu i oświetleniu;
  7. Nadmiar czujników – zbyt wiele sensorów zwiększa masę, pobór energii i złożoność oprogramowania;
  8. Brak procedur awaryjnych – robot może utknąć w nieskutecznym stanie lub zbyt późno zareagować na krawędź.

Dobrą praktyką jest zastosowanie łatwo dostępnego wyłącznika awaryjnego oraz programowej procedury natychmiast zatrzymującej silniki. Równie ważne są zabezpieczenie akumulatora, solidne mocowanie przewodów i regularna kontrola temperatury elementów układu napędowego.