Prvé kolo: Rozdiel medzi revíziami

Zo stránky 3D liga wiki
Prejsť na navigáciu Prejsť na vyhľadávanie
Sebastian (diskusia | príspevky)
Sebastian (diskusia | príspevky)
Bez shrnutí editace
Riadok 17: Riadok 17:
# [[#Arduino IDE|Nastavenie Arduino IDE]]
# [[#Arduino IDE|Nastavenie Arduino IDE]]
# [[#Vytlačená stavebnica|Zoznámenie sa s vytlačenou stavebnicou]]
# [[#Vytlačená stavebnica|Zoznámenie sa s vytlačenou stavebnicou]]
# [[#Logická jednotka|Zoznámenie sa s logickou jednotkou]]
# [[#Elektronické komponenty|Spoznanie elektronických komponentov]]
# [[#Elektronické komponenty|Spoznanie elektronických komponentov]]
#* Servo motorčeky
#* Servo motorčeky
Riadok 87: Riadok 86:
[[Image:RP2350 port.png|300px]]
[[Image:RP2350 port.png|300px]]


== Vytlačená stavebnica ==
== Úlohy ==


== Logická jednotka ==
<span style="background:#CCFFCC">'''Vyskúšaj toto:'''</span> Test sériovej komunikácie. Skopíruj a spusti nasledujúci program. Sleduj sériový monitor. Uisti sa, že máš v okne sériového monitora zvolených 9600 baudov.


== Elektronické komponenty ==
<syntaxhighlight lang="C">
void setup() {
  Serial.begin(9600);
}
int i = 0;
void loop() {
  Serial.print("Ahoj ");
  Serial.println(i++);
  delay(1000);
}
</syntaxhighlight>


<span style="background:#FFFFA0">'''TVOJA ÚLOHA:'''</span> Uprav program tak, aby po dosiahnutí čísla 100 začal počítať v opačnom poradí – až do 0, a potom znova do 100, atď. Použi operátor dekrementovania (''i--'') a podmienku ''if'':


<syntaxhighlight lang="C">
if (podmienka)
{
    príkazy, ktoré sa vykonajú keď je podmienka splnená
}
</syntaxhighlight>


== Prva stavebnica ==
Všimni si, ako je v kóde vyššie definovaná premenná <i>i</i> typu <i>int</i>. Možno budeš chcieť definovať ďalšiu premennú.


== Druh stavebnica ==
[[Image:lgt8f328p.jpg|250px]]


== Robotické rameno ==
Čo sme sa naučili?
* Využívať sériový výstup na výpis informácií do sériového monitora, čo je veľmi užitočné pri ladení (debugovaní) programov.
 
=== Vytlačená stavebnica ===
 
=== Elektronické komponenty ===
 
 
 
=== Prva stavebnica ===
 
=== Druhá stavebnica ===
 
=== Robotické rameno ===

Verzia z 20:23, 26. apríl 2026

Vitajte v prvom kole 3D ligy!

V tomto kole sa zoznámite so súčiastkami, programovacím prostredím a samotnou konštrukciou stavebnice. Zvládnutie základov je kľúčové – bez nich by sme nedokázali stavať zložitejšie a zaujímavejšie roboty. Komplexnejším projektom sa budeme venovať v 2. kole.

Pravidlá kola

  • Počas kola budete dostávať jednoduché zadania, ktoré budete musieť zdokumentovať (odfotiť alebo natočiť) a odovzdať na mail insert mail.
  • Každý tím má k dispozícii určitý počet bodov, ktoré môže využiť na nápovedy.
  • Nápovedy môžu mať formu priameho kódu alebo vás nasmerujú správnym smerom.
  • Hodnotiť sa bude: insert conditions
  • Za každú použitú nápovedu sa príslušný počet bodov odpočíta. Na konci kola sa prihliada aj na celkový zostatok bodov.

Postup bude nasledovný:

  1. Nastavenie Arduino IDE
  2. Zoznámenie sa s vytlačenou stavebnicou
  3. Spoznanie elektronických komponentov
    • Servo motorčeky
    • Senzory
    • Kombinácie
  4. Zložíme si robotické autíčko
  5. Zložíme si jednoduché robotické rameno

Arduino IDE

Na programovanie stavebnice 3D Ligy budeme používať vývojové prostredie Arduino IDE 2.

Stiahnuť ho môžete na oficiálnej stránke Arduina. Vyberte verziu zodpovedajúcu vášmu operačnému systému (Windows, macOS alebo Linux).

Mikrokontrolér

Ako riadiaci čip stavebnice používame Waveshare RP2350-Zero. Aby s ním Arduino IDE vedelo komunikovať, je potrebné doinštalovať príslušnú knižnicu (board package).

Inštalácia knižnice

  1. Otvorte Arduino IDE a prejdite do File → Preferences.
  2. Do poľa "Additional boards manager URLs" pridajte nasledujúci odkaz:
https://github.com/earlephilhower/arduino-pico/releases/download/4.5.2/package_rp2040_index.json
  1. Potvrďte tlačidlom OK.
  2. Otvorte Tools → Board → Boards Manager a vyhľadajte "Raspberry Pi Pico/RP2040" (obsahuje aj RP2350).
  3. Nainštalujte knižnicu od autora Earle F. Philhower, III.

Výber dosky a portu

Po inštalácii knižnice je nutné zvoliť správnu dosku a port – bez toho počítač nerozpozná pripojený mikrokontrolér.

  1. V menu Tools → Board vyhľadajte a vyberte "Raspberry Pi Pico".
  2. Pripojte mikrokontrolér k počítaču pomocou USB kábla.
  3. V menu Tools → Port vyberte port, na ktorom sa zariadenie objavilo (napr. COM3 na Windows alebo /dev/ttyACM0 na Linuxe).

Mikrokontrolér očakáva program vo formáte .uf2. Existujú dva spôsoby, ako ho získať:

  • Priamo z Arduino IDE: Použite Sketch → Export Compiled Binary (alebo skratku Ctrl+Alt+S). Arduino IDE skompiluje kód a uloží súbor .uf2 do priečinka projektu.
  • Drag & drop: Skompilovaný súbor .uf2 jednoducho presuňte myšou na jednotku RP2350. Po nahratí sa mikrokontrolér automaticky reštartuje a program sa spustí.

Pre vizualizáciu tu je Youtune video (fyzický postup je rovnaký pre RP2040 a RP2350)

Prvé pripojenie – režim BOOTSEL

Pri úplne prvom nahrávaní, alebo keď mikrokontrolér neodpovedá, je potrebné ho prepnúť do režimu BOOTSEL:

  1. Stlačte a podržte tlačidlo BOOT na doske RP2350-Zero.
  2. Počas držania tlačidla zapojte USB kábel do počítača.
  3. Tlačidlo uvoľnite.

Na počítači sa objaví nová jednotka (ako USB flash disk) s názvom RP2350 alebo RPI-RP2. Do tejto jednotky môžete priamo pretiahnuť (drag & drop) súbor s programom.

Ďalsie nahrávanie

Ďalšie nahrávania programov budú prirodzenejšie.

  • Zapojí sa doska do počítača.
  • Vyberie sa doska (Raspberry Pi Pico) a port.
  • Ak sa port našiel, potvrďte talčidlom OK
  • Váš kód nahrajete cez tlačidlo -> v ľavom hornom rohu. (skratka: Ctrl+U)

Úlohy

Vyskúšaj toto: Test sériovej komunikácie. Skopíruj a spusti nasledujúci program. Sleduj sériový monitor. Uisti sa, že máš v okne sériového monitora zvolených 9600 baudov.

void setup() {
  Serial.begin(9600);
}
int i = 0;
void loop() {
  Serial.print("Ahoj ");
  Serial.println(i++);
  delay(1000);
}

TVOJA ÚLOHA: Uprav program tak, aby po dosiahnutí čísla 100 začal počítať v opačnom poradí – až do 0, a potom znova do 100, atď. Použi operátor dekrementovania (i--) a podmienku if:

if (podmienka)
{
    príkazy, ktoré sa vykonajú keď je podmienka splnená
}

Všimni si, ako je v kóde vyššie definovaná premenná i typu int. Možno budeš chcieť definovať ďalšiu premennú.

Súbor:Lgt8f328p.jpg

Čo sme sa naučili?

  • Využívať sériový výstup na výpis informácií do sériového monitora, čo je veľmi užitočné pri ladení (debugovaní) programov.

Vytlačená stavebnica

Elektronické komponenty

Prva stavebnica

Druhá stavebnica

Robotické rameno