RCJ 2026 - Mushrooms

Zo stránky Galéria Robotov

Mushrooms

Škola/klub: Stredná priemyselná škola elektrotechnická Prešov

Kontakt: oli.kosiba@gmail.com

Kategória: soccer lightweight / infrared


Predchádzajúca história modelu

Generácia robota je rovnaká akú sme využívali, len s par zmenami. Hlavne zmeny sú:

  • Vyčistený kód
  • Úplne nové 3D modely tela a vrchu

Konštrukcia a hardvér

Robot sa skladá z 3D vytlačeného tela a dvoch DPS. Na dolnej DPS sú osadené motory so štyrmi omniwheelami, hlavný mikrokontroler a line senzory. Na hornej DPS sú osadené IR senzory a ESP-32. Najvyššie sú osadené mmWave radary. Robot je okolo 12.5cm vysoký a 22cm široký.

Zoznam súčiastok

3D modely, výkresy, náčrty konštrukcie a dielov

Mushrooms Model.png

Schémy, návrhy plošných spojov, elektronika

Mushrooms schema.png

Popis zapojenia elektroniky

Robot je zapojený na 11.1V v 3S zapojení 3.7V Li-Ion bateriek, potom napätie je znížené pre dané senzory. Teensy 4.1, je náš hlavný procesor ktorý komunikuje spolu s ESP32 využitím I2C. Spolu tieto procesory zisťujú:

  • pozíciu lopty: 35 IR senzorov (11 na dolnej doske, 24 na hornej),
  • Detekcia čiary: 24 fototranzistorov,
  • Zistenie pozicie: 6 mmWave senzorov a gyroskop BNO055.
  • Tieto senzory sú spracované cez viacero multiplexorov.
  • DC motory sú riadené cez H-Bridge obvody použitím PWM signálov a su priamo napojené na 11.1V

Softvér

  • Programovanie: Arduino IDE;
  • 3D modelovanie: Autodesk Inventor, Autodesk Fusion;
  • Vývoj dosiek: Eagle, Kicad


  • Kusok Kodu:
   void fillZerosBetweenOnes(int arr[], int size, int maxGap, int &total) {
       int temp[size];
       memcpy(temp, arr, size*sizeof(int));
       for(int i=0; i<size; i++){
           if(temp[i]!=1) continue;
           for(int gap=1; gap<=maxGap; gap++){
               int end=(i+gap+1)%size;
               bool allZero=true;
               for(int k=1; k<=gap; k++){
                   if(temp[(i+k)%size]!=0){ allZero=false; break; }
               }
               if(allZero&&temp[end]==1){
                   for(int k=1; k<=gap; k++){
                       int idx=(i+k)%size;
                       if(arr[idx]==0){ arr[idx]=1; total++; }
                   }
               }
           }
       }
   }

Fotodokumentácia

Mushrooms Bots Together AW.jpg Mushrooms Bots Together Glowing WOAH.jpg Mushrooms TopPCB Bottom.jpg Mushrooms BottomPCB Top.jpg Mushrooms BottomPCB Bottom.jpg Mushrooms WHAT THE HELLLL.jpg Mushrooms HUUUUUUH.jpg

Iné

  • Veľa na robotovi sa nezmenilo z dôvodu zmeny hráčov. Takže sme sa učili a zisťovali ako robot funguje vo svojom celku