Robotické MiniSumo

Robotické MiniSumo je zápas dvoch robotov o panstvo nad ringom. Ring je drevený kruh čiernej farby s bielym okrajom. Robot, ktorý vytlačí svojho súpera z ringu zvíťazí. Roboty súťažia v hmotnostnej kategórii do 500 g, rozmery sú obmedzené na 10 x 10 cm. Robot musí byť po umiestnení do ringu celkom samostatný a jeho autor ho nesmie ovplyvňovať.


Zápas dvoch robotov v ringu.

Ak si prinesiete svojho robota, napríklad z Lega, môžete ho skúsiť postaviť proti nášmu šampiónovi. Okrem toho bude k dispozícii mobilný robot, ktorý má dostatok senzorov na to, aby sa mohol po povrchu ringu pohybovať a zdetekovať súpera. Bude možnosť vyskúšať si ako sa tvorí riadiaci program pre takéhoto robota a overiť si ho priamo na výstave.

Podrobnejšie informácie o pravidlách...
Podrobnejšie informácie o robotovi...

Namiesto živého zápasníka použijeme robota BoeBot od firmy Parallax. Napájaný je tužkovými batériami, má dva jednosmerné motorčeky a riadiacu jednotku programovateľnú v jazyku BasicStamp.


Robot SumoBot firmy Parallax.

Záujemci o podrobnejší popis robota si môžu zo stránok výrobcu stiahnuť a naštudovať:

LEGO

Jeden z predvádzaných robotov bude z LEGA. Dôvod je zrejmý -- mnohí majú LEGO doma, nájde sa aj prakticky na každej škole, takže by nemal byť problém v zostavení a naprogramovaní vlastného zápasníka.

Na výstavisku bude k dispozícii naprogramovaná riadiaca jednotka RCX, ku ktorej treba pripojiť dva motorčeky a senzor a zostrojiť vhodného robota.


Roverbot zo stavebnice LEGO Mindstorms.

Tí, ktorí nemajú vlastné LEGO, môžu skúsiť naprogramovať toho nášho. Robota môžete programovať buď priamo v grafickom jazyku, ktorý je súčasťou stavebnice.


Príklad program pre Robota.

Pre pokročilých ale odporúčame programovať v niektorom bežnom jazyku, napríklad C-čku. Vhodný kompilátor pre RCX kocku je napr. NQC, ktorý sa dá stiahnuť tuto.

#define THRESHOLD 40

task main()
{
  SetSensor(SENSOR_2,SENSOR_LIGHT);      // Pouzivame svetelny senzor

  while (true)                           // Toto rob stale dokola...
  {
    OnFwd(OUT_A+OUT_C);                  // Zapni oba motory vpred
    if (SENSOR_2 > THRESHOLD)            // Ak nevidis ciaru (biela)
    {
      OnRev(OUT_C);                      //  Dozadu pravym (cely robot vpravo)
      Wait(10);                          //  Chvilku otacaj
      until (SENSOR_2 <= THRESHOLD);     //  Otacaj az kym nebude zasa ciara
      OnFwd(OUT_A+OUT_C);                //  A teraz uz zasa plnou parou vpred!
    }
  }
}

Program v NQC pre Roverbota na sledovanie čiary.

 

 

© 2006 Robotika.SK
Ilkovičova 3, 812 19 Bratislava, tel. +421 - 2 - 602 91 411.
Posledná zmena: 1. októbra 2006. 22:09:12.
Zodpovedný človek: Richard Balogh.